Python爬虫编程思想(149):使用Scrapy抓取数据,并通过XPath指定解析规则

Posted 蒙娜丽宁

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python爬虫编程思想(149):使用Scrapy抓取数据,并通过XPath指定解析规则相关的知识,希望对你有一定的参考价值。

        本文的案例会在parse方法中通过response参数设置XPath,然后从html代码中过滤出我们感兴趣的信息,最后将这些信息输出到PyCharm的Console中。

       下面的例子通过XPath过滤出指定页面的博文列表,并利用Beautiful Soup对博文的相关信息进一步过滤,最后在Console中输出博文标题等信息。

import scrapy
from bs4 import *
class BlogSpider(scrapy.Spider):
    name = \'BlogSpider\'
    start_urls = [
        \'https://geekori.com/blogsCenter.php?uid=geekori\'
        ]
def parse(self,response):
    # 过滤出指定页面所有的博文
        sectionList = response.xpath(\'//*[@id="all"]/div[1]/section\').extract()
        # 对博文列表进行迭代
        for section in sectionList:
            # 利用BeautifulSoup对每一篇博文的相关信息进行过滤
            bs = BeautifulSoup(section,\'lxml\')
            articleDict = 
a = bs.find(\'a\')
# 获取博文标题

以上是关于Python爬虫编程思想(149):使用Scrapy抓取数据,并通过XPath指定解析规则的主要内容,如果未能解决你的问题,请参考以下文章

Python爬虫编程思想(148):在PyCharm中使用扩展工具运行Scrapy程序

Python爬虫编程思想(148):在PyCharm中使用扩展工具运行Scrapy程序

Python爬虫编程思想(148):在PyCharm中使用扩展工具运行Scrapy程序

Python3分布式爬虫(scrap+redis)基础知识和实战详解

Python爬虫编程思想(12):搭建代理与使用代理

Python爬虫编程思想(135):多线程和多进程爬虫--Python与线程