python中的start_在scrapy框架python的start_urls列表中为url构造...

news/2024/7/3 13:51:09

我对Scrapy非常陌生,而且之前我没有使用过正则表达式

以下是我的spider.py代码

class ExampleSpider(BaseSpider):

name = "test_code

allowed_domains = ["www.example.com"]

start_urls = [

"http://www.example.com/bookstore/new/1?filter=bookstore",

"http://www.example.com/bookstore/new/2?filter=bookstore",

"http://www.example.com/bookstore/new/3?filter=bookstore",

]

def parse(self, response):

hxs = HtmlXPathSelector(response)

现在,如果我们看一下start_urls,则所有三个url都相同,除了它们的整数值2?,3?不同.依此类推,我的意思是根据网站上显示的URL不受限制,我现在可以使用crawlspider并为URL构造正则表达式,如下所示,

from scrapy.contrib.spiders import CrawlSpider, Rule

from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor

import re

class ExampleSpider(CrawlSpider):

name = 'example.com'

allowed_domains = ['example.com']

start_urls = [

"http://www.example.com/bookstore/new/1?filter=bookstore",

"http://www.example.com/bookstore/new/2?filter=bookstore",

"http://www.example.com/bookstore/new/3?filter=bookstore",

]

rules = (

Rule(SgmlLinkExtractor(allow=(........),))),

)

def parse(self, response):

hxs = HtmlXPathSelector(response)

您能否指导我,如何为上述start_url列表构建抓取蜘蛛规则.


http://www.niftyadmin.cn/n/1997377.html

相关文章

matlab画出积分波形,matlab课程设计参考题目

课题一:连续时间信号和系统时域分析及MATLAB实现课题要求:深入研究连续时间信号和系统时域分析的理论知识。利用MATLAB虽大的图形处理功能、符号运算功能以及数值计算功能,实现连续时间信号和系统时域分析的仿真波形。课题内容:一…

全程干货!中国商标注册全流程,注册中国商标操作指南

只有注册了商标的商品,能够进入商场、超市、电商平台销售。商标利于消费者记忆,防止被仿造。注册商标受法律保护,享有专用权,其他任何人均不能再相同或近似商品上使用。中国商标是企业的无形财产,可授权、转卖、加入资…

在MFC类中各种类的指针的获取和应用 (2)

关于MFC下的文档和视图以及框架之间的访问, 这些问题已经是老生常谈了,但我觉得还是都没有详细的说明,特    别是对于英语较差的人,我查看了一些blog,总结了一下!希望对和我一样的人有点帮助!    1:  因为对于SDI程序,主框架窗口就是文档框窗(如果这个也不…

零元学Expression Design 4 - Chapter 3 看小光被包围了!!如何活用「Text On Path」设计效果...

原文:零元学Expression Design 4 - Chapter 3 看小光被包围了!!如何活用「Text On Path」设计效果本章将教大家如何活用「Text On Path」,做出文绕图以及文字线性排列的效果 也可以学到如何使用Polyline以及B-Spline ? 本章将教大家如何活用「Text On Path」&#…

关于CString

关于CString 通过阅读本文你可以学习如何有效地使用 CString。  CString 是一种很有用的数据类型。它们很大程度上简化了MFC中的许多操作,使得MFC在做字符串操作的时候方便了很多。不管怎样,使用CString有很多特殊的技巧,特别是对于纯C背景…

iOS__Cocoapods 安装第三方框架 pod install 报Generating Pods project Abort trap

在开发iOS程序经常会使用到第三方开源的框架,在是使用Cocoapods时,如果遇到pod install 报如下错误: $ pod install Generating Pods project Abort trap: 6 复制代码 ####解决办法: 1.首先需要执行如下命令 (注意:一个一个的执行,且每个命令都要执行) sudo gem uninstall coc…

matlab 把数存入数组,求助:如何将带有符号变量的运算结果储存到数组中

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼问题:在使用 MATLAB 去做 Nevilles Algorithm 的时候,因为要涉及到参数(符号变量)的保存,所以要把运算结果储存到一个数组当中。代码如下:% num of interpolation points and curve f…

php技术的概念特点,基本概念

## **class**每个类的定义都以关键字class开头,后面跟着类名,后面跟着一对花括号,里面包含有类的属性与方法的定义。类名可以是任何非 PHP[保留字](https://www.php.net/manual/zh/reserved.php)的合法标签。一个合法类名以字母或下划线开头&…