前面花了几期的时间说了下python的爬虫的事情,今天来介绍一下python中的scrapy框架,看看他是如何来做爬虫的。
在开始动手之前先引入一下架构的知识。这里主要介绍极大组件完成哪些功能,他们是如何写作的。

安装scarpy,我这里使用的是mac上安装直接运行
sudo pip install scrapy
我的开发环境用的是pycharm,在preference中选择如下,安装即可。

通过控制台命令建立第一个srcapy项目
scrapy startproject demo01

生成项目以后直接打开,如图所示

这里还是通过命令行来建立爬虫。先进入刚才建立的项目demo01
再运行生成爬虫的例子
scrapy genspider baidu baidu.com
第一个baidu是爬虫的名字,第二个baidu.com是需要爬取的url地址。

此时会生成爬虫对应的文件

先去设置setting文件

把user agent配置起来,就是配置浏览器。这里的ROBOTSTXT文件会定义哪些数据需要爬取,哪些是不让爬取的。我们做测试暂时就不用这个规则文件。
# Obey robots.txt rules
ROBOTSTXT_OBEY = False
USER_AGENT = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36'
设置完毕以后回到爬虫的spiders文件,在解析的位置加上一行代码。
def parse(self, response):
print(response.text)

通过命令行执行命令,查看爬虫结果。
scrapy crawl baidu
这里baidu就是爬虫的名字。查看结果发现返回的百度的html。
如果需要打端点用命令行的方式就不行了,需要建立一个python文件。加入以下的内容。

然后右键运行python文件。同样也可以看到结果。
喜欢的关注一下。谢谢
| 留言与评论(共有 0 条评论) |