DDR爱好者之家 Design By 杰米

一、介绍

官方文档:中文2.3版本

下面这张图大家应该很熟悉,很多有关scrapy框架的介绍中都会出现这张图,感兴趣的再去查询相关资料,当然学会使用scrapy才是最主要的。

python爬虫scrapy基本使用超详细教程

二、基本使用

2.1 环境安装

1.linux和mac操作系统

pip install scrapy

2.windows系统

  1. 先安装wheel:pip install wheel
  2. 下载twisted:下载地址
  3. 安装twisted:pip install Twisted"text-align: center">python爬虫scrapy基本使用超详细教程

    2.2 scrapy使用流程

    这里默认大家已经安装好scrapy库,大家要记得要在命令行里输入以下命令啊。(我使用的anaconda的命令行)

    创建工程

    scrapy startproject projectName

    python爬虫scrapy基本使用超详细教程
    python爬虫scrapy基本使用超详细教程

    进入工程目录:这里一定要进入到刚才创建好的目录中

    cd projectName

    python爬虫scrapy基本使用超详细教程

    创建爬虫文件:创建的爬虫文件会出现在之前创建好的spiders文件夹下

    scrapy genspider spiderName www.xxx.com

    python爬虫scrapy基本使用超详细教程python爬虫scrapy基本使用超详细教程

    编写相关代码

    执行爬虫文件

    scrapy crawl spiderName

    python爬虫scrapy基本使用超详细教程

    2.3 文件解析

    import scrapy
    
    class HelloSpider(scrapy.Spider):
     name = 'hello' # 爬虫名称
    
     # 允许的域名:限定start_urls列表当中哪些url可以进行请求的发送
     # 通常情况下我们不会使用
     # allowed_domains = ['www.baidu.com'] 
    
     # 起始的url列表:scrapy会自动对start_urls列表中的每一个url发起请求
     # 我们可以手动添加我们需要访问的url
     start_urls = ['https://www.baidu.com/','https://www.csdn.net/']
    
     def parse(self, response): # 当scrapy自动向start_urls中的每一个url发起请求后,会将响应对象保存在response对象中
     # 代码一般是在parse方法中写
     print("response:",response)

    python爬虫scrapy基本使用超详细教程

    2.4 settings.py一些常见的设置

    相当于requests中的headers参数中的User-Agent

    USER_AGENT = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36 Edg/88.0.705.68'

    可以忽略或者不遵守robots协议

    ROBOTSTXT_OBEY = False 

    只有程序出现错误的情况下,才显示日志文件,程序正常执行时只会输出我们想要的结果

    LOG_LEVEL='ERROR' == scrapy crawl spiderName --nolog
    //二者是等价的,当然还是推荐使用前者

    未加LOG_LEVEL='ERROR'

    python爬虫scrapy基本使用超详细教程

    LOG_LEVEL='ERROR'之后

    python爬虫scrapy基本使用超详细教程

    scrapy 爬取文件保存为CSV文件中文乱码的解决办法

    //下面的设置可能会导致繁体出现,可以逐个试一下
    FEED_EXPORT_ENCODING = "gb18030"
    FEED_EXPORT_ENCODING = "utf-8"
    FEED_EXPORT_ENCODING = "gbk"

    python爬虫scrapy基本使用超详细教程

    三、实例

    3.1 实例要求

    目的:爬取百度网页的百度热榜

    python爬虫scrapy基本使用超详细教程 

    3.2 实例代码

    实例代码

    python爬虫scrapy基本使用超详细教程 

    3.3 输出结果

    结果

    python爬虫scrapy基本使用超详细教程

DDR爱好者之家 Design By 杰米
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
DDR爱好者之家 Design By 杰米

《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线

暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。

艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。

《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。