作者:天云2_776 | 来源:互联网 | 2023-10-10 17:32
rules:定义抽取链接的规则。也就是解析数据的函数。follow:True:爬取所有页。frompc˃根据链接的规律,我们来写下正则:#实例化LinkExtractor对象。全
克莱尔斯皮德尔:
概念:实际上是Spider的子类。 Spider是爬行动物的父母。
子类的功能一定比父类多。 角色:专门用于实现全站仪的数据滚动
滚动与下一页的所有页面对应的数据基本上使用:
创建工程光盘项目基于CrawlSpider的爬虫文件scrapygenspider-tcrawlspidernamewww.XXX.com示例:
项目的创建: crawlPro
scrapystartprojectcrawlprocdcrawlproscrapygenspider-tcrawlfirstwww.XXX.com的更改配置文件的创建方式与以前的常规操作相同,如下所示:
任务:攀登ldqz网源中的所有链接
3558 WWW.521609.com/daxue小华/
首先,让我介绍一下代码。
rules=(
规则(链接提取器)允许值=r ' items/',调用=' parse _ item ',跟随值=真),
(rules )定义提取链接的规则。
链接提取器:链接提取器。
callback:回调函数。 也就是分析数据的函数。
follow:
真:爬所有的页面。 False :只登当前页。 实例化链接提取器对象。
基于链接器(规则(allow参数),在页面中进行(url )滚动。
allow=‘正则’:提取链接的规则。
根据链接的法则,写正则吧:
实例化链接提取器对象
# # #链接提取器:根据规则(allow参数),在页面上进行(url )滚动
# allow='正则':提取链接的规则
link=link导出器(允许=r '/达Xue小华/\d { 1,10 }\. html ' )
rules=(
# #在这里,首先要爬上现在的页面进行测试。 浮点=假
规则(链接,调用后退=' parse _ item ',跟随=假)、
执行工程,看效果:
刮板第一个
链接已获取。
所有代码:
菲斯特.普y
导入脚本
froms crapy.linkextractorsimportlinkextractor
froms crapy.spidersimportcrawlspider,规则
classfirstspider(crawlspider ) :
名称='第一'
# # allowed _ domains=[ ' www.XXX.com ' ]
start _ URLs=[ ' http://www.521609.com /日本小华/'
实例化链接提取器对象
# # #链接提取器:根据规则(allow参数),在页面上进行(url )滚动
# allow='正则':提取链接的规则
link=link导出器(允许=r '/达Xue小华/\d { 1,10 }\. html ' )
rules=(
实例化Rule对象
# #规则语法分析部(接收由链接提取部提取的链接,发出请求,根据指定的规则(callback )分析数据
规则(链接,调用后退=' parse _ item ',跟随=假)、
)
def parse _ item (自,响应) :
print(response )怎么爬这个页面的所有链接呢?
其实是代码:
链接导出器(允许=r ' ' ) 9503.163.com) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )。
怎么过滤不是521609.com的链接?
# #打开并设定allowed_domains即可
allowed _域=[ ' 521609.com ' ] [ 9504.163.com ]
注意:
一个链接器对应一个规则解析器。 多个链接器和多个规则解析器。 要实现深滚动,下一课需要使用CrawlSpider来实现深滚动
关注Python模糊的哆啦A梦! 多学习Python的知识!
168飞艇6种不亏钱的方法.com /日本小华/'
实例化链接提取器对象
# # #链接提取器:根据规则(allow参数),在页面上进行(url )滚动
# allow='正则':提取链接的规则
link=link导出器(允许=r '/达Xue小华/\d { 1,10 }\. html ' )
rules=(
实例化Rule对象
# #规则语法分析部(接收由链接提取部提取的链接,发出请求,根据指定的规则(callback )分析数据
规则(链接,调用后退=' parse _ item ',跟随=假)、
)
def parse _ item (自,响应) :
print(response )怎么爬这个页面的所有链接呢?
其实是代码:
链接导出器(允许=r ' ' ) 9503.163.com) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )。
怎么过滤不是521609.com的链接?
# #打开并设定allowed_domains即可
allowed _域=[ ' 521609.com ' ] [ 9504.163.com ]
注意:
一个链接器对应一个规则解析器。 多个链接器和多个规则解析器。 要实现深滚动,下一课需要使用CrawlSpider来实现深滚动
关注Python模糊的哆啦A梦! 多学习Python的知识!