一个简单的爬虫案例,带你入门scarpy爬虫框架

一个简单的爬虫案例,带你入门scarpy爬虫框架

Scrapy,Python开发的一个快速、高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据。Scrapy用途广泛,可以用于数据挖掘、监测和。

Scrapy吸引人的地方在于它是一个框架,任何人都可以根据需求方便的修改。它也提供了多种类型爬虫的基类,如BaseSpider、sitemap爬虫等,最新版本又提供了web2.0爬虫的支持。

scrapy shell

用来测试提取数据的代码,不过我们可以将其作为正常的Python终端,在上面测试任何的Python代码。

在命令行界面输入scrapy shell <url>(这里的网址不需要加引号),例如:

scrapy shell https://www.huya.com/g/lol

一个简单的爬虫案例,带你入门scarpy爬虫框架

建立第一个Scrapy项目

打开Pycharm,然后再打开我们刚建好的HuyaLol项目,在spiders文件夹下新建一个lol.py

一个简单的爬虫案例,带你入门scarpy爬虫框架

代码如下

一个简单的爬虫案例,带你入门scarpy爬虫框架

然后在Pycharm里打开命令行界面,输入scrapy list可以列出当前爬虫项目下所有的爬虫文件,这里只有一个爬虫文件huyalol。

然后在命令行界面输入scrapy crawl huyalol,就可以运行我们的爬虫了。

可能遇到的问题及解决办法

一个简单的爬虫案例,带你入门scarpy爬虫框架

(1)利用xpath获取不到数据,反复检查代码之后,发现是引号出了问题

"//*[@id="js-live-list"]/li/a[2]/text()"

这里两端要用单引号,因为中间使用了双引号。

(2)根据教程上把@id="js-live-list"改成@class="title new-clickstat"后获取不到数据,这个应该注意一下。

(3)在纠正上述问题后还是没有得到数据

解决办法:把settings.py里的ROBOTSTXT_OBEY = True改成ROBOTSTXT_OBEY = False

相关推荐