zoukankan      html  css  js  c++  java
  • scrapy的第一天学习

    首先scrapy startproject  '文件名' 创建你所需要的文件名字

    然后在spiders 里面创建你的爬虫规则,

    shell里面操作
    cd tutorial
    
    然后
    
    scrapy genspider books http://books.toscrape.com/#创建py文件,创建name爬虫名字,创建需要爬取的网站

    spiders::表达的更像一个填空题

    爬虫从哪个网址开始爬区?

    对于一个已下载的页面,提取其中的哪些数据?

    爬取完当前页面后,接下来爬取哪个或哪些页面?

    import scrapy
    
    class BooksSpider(scrapy.Spider):
        name='books'
        start_urls=['http://books.toscrape.com/']
        def parse(self,response):
            for book in response.css('article.product_pod'):
                name=book.xpath('./h3/a/@title').extract_first()
                price=book.css('p.price_color::text').extract_first()
                yield {
                    'name':name,
                    'price':price
                }
    
            next_url=response.css('ul.pager li.next a::attr(href)').extract_first()
            if next_url:
                next_url=response.urljoin(next_url)
                yield scrapy.Request(next_url,callback=self.parse)

    然后scrapy crawl books -o books.csv  books是代表你爬虫内命名的name的名字。 -o 创建你所爬取数据的所储存的文件名字 倒出csv格式

    实现一个Spider只需要4个步骤

    1:继承scrapy.Spider

    2:为Spider取名

    3:设定起始爬区点

    4:实现页面解析函数

     
  • 相关阅读:
    Lua手册中的string.len 不解
    计算机词汇(Computer Glossary)
    Qt 信号和槽机制的优缺点
    多线程,什么时候该使用?
    Linux进行挂起和杀死挂起进程
    struct和class的区别
    Number of 1 Bits
    Pascal's Triangle
    Excel Sheet Column Title
    c++单向链表
  • 原文地址:https://www.cnblogs.com/zj0724/p/9113210.html
Copyright © 2011-2022 走看看