• 初学爬虫,关于scrapy


    对于anaconda与pycharm,因为在pycharm中一直下不成功tensorflow,所以后来又下了anaconda,pycharm就可以直接使用anaconda的编译器,

    一直都很正常,但是,就scrapy而言,在anaconda成功使用,但是,pycharm就不成功,一直显示不存在该包。

    就只能用pycharm上修改代码,anaconda的prompt下执行代码。

    1、在终端输入scrapy startproject XX,就表明在该包下创建scrapy项目XX

    2、输入scrapy genspider news www.baidu.com,就是表明要爬www.baidu.com,同时在scrapy项目下的spiders新建news.py

    3、终端中执行的代码为scrapy crawl news

    4、如果想要爬网站,最好将项目中setting.py中 

    ROBOTSTXT_OBEY变为False, 

    为了查看更方便可以增加 , LOG_LEVEL='WARNING'

    为了访问网站成功,将DEFAULT_REQUEST_HEADERS中增加User-Agent

    5、可以将start_urls改为真正想要访问的网站,上面创建时的网站,只是域网。

    6、执行,在终端中输入scrapy crawl new

    7、如果要保存在json下,则可以

                author = response.xpath('//div[@id="info"]//p[1]/text()').extract()
                content = response.xpath('//div[@id="intro"]//p/text()').extract()
                yield{
                    "content" : content
                    "author" : author
                }

    8、简单的执行方法可以,建一个run.py,然后,在有该文件下,直接在终端输入python run.py

    from scrapy import cmdline
    
    cmdline.execute("XX".split())
  • 相关阅读:
    [原]OS X 10.9 Mavericks
    [原]iOS Makefile Template
    [原]Escape From the iOS Sanbox on Jailbreak Device
    串->串的表示和实现
    队列->队列的应用(银行业务模拟)
    队列->队列的表示和实现
    栈->栈与递归
    栈->栈的应用
    栈->栈的基本定义
    线性表->应用->一元多项式
  • 原文地址:https://www.cnblogs.com/wzwi/p/10725746.html
Copyright © 2020-2023  润新知