scrapy学习笔记(二)

永远保持一颗求知的心,不要被已知所束缚。

第二篇就不想写了,这样不行的。

A任务:爬取stackoverflow的问题和详细内容数据并保存csv文件

用Firefox分析网页元素:

图一 主目录网页元素分析

可以看到我们要爬取的所有链接可以由这个目录进,查询到目的网页的链接地址:

图二 主目录下目的网页链接元素分析

进入目的子网页并分析元素:


图三 目的子网页元素分析

网页分析完成以后编写一简单爬虫进行试验:

import scrapy

class StackOverflowSpider(scrapy.Spider):

      name = "Stackoverflow"

      start_urls=["https://stackoverflow.com/questions?sort=votes"]


      def parse(self,response):

            for href in response.css('.question-summary h3 a::attr(href)'):

                  full_url = response.urljoin(href.extract())

                  yield scrapy.Request(full_url,callback=self.parse_question)


      def parse_question(self,response):

            yield {

                  'title':response.css('.inner-content h1 a::text').extract()[0],

                  'votes':response.css(".vote .vote-count-post::text").extract()[0],

                  'body':response.css(".post-text").extract()[0],

                  'tags':response.css('.post-taglist .post-tag::text').extract(),

                  'link':response.url,

                  }

执行爬虫并保存为csv文件:

> scrapy runspider scrapy1.py  -o abc.csv

就可以在文件夹下发现已经存有数据的abc.csv,需要重点学习css选择器的使用规则。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • scrapy学习笔记(有示例版) 我的博客 scrapy学习笔记1.使用scrapy1.1创建工程1.2创建爬虫模...
    陈思煜阅读 12,798评论 4 46
  • 1.Scrapy的命令行命令 创建一个Scrapy工程终端输入: PyCharm 下直接运行 ScrapyScra...
    EnjoyWT阅读 3,155评论 0 1
  • 爬虫初探-Scrapy Scrapy 资料 官方文档永远是首选,建议把 tutorial 完整的过一遍。 网址:h...
    廖少少阅读 2,104评论 0 3
  • 音乐响起, 那熟悉的旋律, 再次拨动了心悸, 勾起过往, 留存的些许记忆, 开启循环, 静静回忆。 眼神变得深邃迷...
    静静086阅读 182评论 0 0
  • ** 每个人或多或少的玩一些游戏,有人喜欢大型网络游戏, 有人喜欢简简单单的游戏,可是又有多少人真正想过游戏的意义...
    青木石阅读 845评论 0 0