CrawlSpider ---> 通用爬虫 项目流程

通用爬虫

通用网络爬虫 从互联网中搜集网页,采集信息,这些网页信息用于为搜索引擎建立索引从而提供支持,它决定着整个引擎系统的内容是否丰富,信息是否即时,因此其性能的优劣直接影响着搜索引擎的效果。

不扯没用的,上干货!

创建项目:

  cmd 命令: scrapy startproject 项目名 

创建

  cmd 命令:scrapy genspider -t crawl 爬虫名 允许爬取得域名

在spider文件 主爬虫文件.py中 替换 start_urls 为要爬取的网址!

在rules中进行指定规则:
  ps:规则制定时选中的必须是标签,或正则匹配连接地址(可跳转性)
rules = (
Rule(LinkExtractor(allow=r'/sort/?st=product&sort=A\[A-Z]'), follow=True), # 参数: allow 正则选择要满足的需求特点 deny :一定不取得特点
Rule(LinkExtractor(restrict_xpaths="//a[text()='»']"), follow=True),    # 参数 restrict_xpaths 用xpath 反向选择或手写xpath取要满足的需求特点
Rule(LinkExtractor(restrict_xpaths="/html/body/div[4]/div/div[2]/div[4]/div/div[1]/div/a"), callback='parse_data',follow=False), # 拷贝xpath选择要满足的需求特点
)

 ps:   

  LinkExtractor()   链接提取器  对选中连接或标签进行操作
  follow=True 同位置 继续 提取需求标签
  follow=False 停止 或 不在 同位置继续提取需求标签
  clllback='一个函数名' follow=True 时 没有太大必要使用,除非该页有需求值 follow=False 时 说明你到了目标数据位置 这是把请求的响应抛给了该函数

而到了函数,就可以利用xpath取值了,封装进item里就可以了,这里item不需要你实例化了item= {}就可以了 通用爬虫帮你做了

最后yield item

主爬虫就写完了。

然后 --》 ???
然后的是就和普通scrapy一样了,
settings.py 里配置 在之前写的博文里有,自行去查看
item.py 里 设置需求数据字段
pipelines.py 对数据队列 进行操作

Ps:
了解不深,个人看法:
其实理解这个通用爬虫不难:
就一句话:
  需要注意的点就在rules这块对吧,我的理解就是,这是在宏观意义上给你要提取输得位置进行制定规则,可以理解为定位,所有满足特点的位置就是我需求数据存放的位置!


好了 就到这里! 简单吧 !
  
  其他的? 自己悟把!哈哈哈!



 

转载于:https://www.cnblogs.com/canhun/p/11134533.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
bodydata中字符串如下: [talkid:138031378]2014年4月20日 05:55:45 , <span class="hint-success" data-hint="">111222</span> 向 <span class="hint-success" data-hint="">323456</span> 发送 我们已经是好友了,开始聊天吧! [talkid:138031379]2014年4月20日 06:55:45 , <span class="hint-success" data-hint="">111222</span> 向 <span class="hint-success" data-hint="">342112</span> 发送 我们已经是好友了,开始聊天吧! [talkid:137031381]2014年4月20日 03:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 我们已经是好友了,开始聊天吧! [talkid:137031382]2014年4月22日 04:45:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 音频 :[<a href="files/f/f123fsasfsfsjdfrhf_n.m4a"]>音频</a> [talkid:137031383]2014年4月23日 04:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 图片 :[<a href="files/f/f123fsasfsfsjdfrhf_n.jpg"]>图片</a> [talkid:137031384]2014年4月24日 05:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 我们已经是好友了,开始聊天吧! [talkid:137031385]2014年4月25日 06:55:45 , <span class="hint-success" data-hint="">2323234</span> 在群 <span class="hint-success" data-hint="">20011</span> 中发言 我们已经是好友了,开始聊天吧! 使用Python爬虫提取“发送”或“中发言”后的文字,如果包含</a href>标签,则设置content默认为空
07-16

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值