Python——爬虫

程序简介

本程序的作用是爬取“豆瓣电影 TOP250”页面内容,同时作为爬虫入门。

本程序使用了scrapy框架,使用MongoDb存储数据。原本打算同时使用代理和随机User-Agent来伪装爬虫,但代理费用较高没有使用(该设置代码在程序中注释,有条件的读者可以删除注释使用),只使用了随机User-Agent。

环境准备

  1. python(3.7.2)
  2. scrapy(1.5.1)
  3. mongodb(4.0.5)

程序步骤

  1. 新建爬虫程序,在环境准备好后,进入某一目录,终端内输入以下命令,新建程序:

    scrapy startproject 项目名称
    
  2. 新建爬虫正则文件,进入项目目录,在终端内输入以下命令:

    scrapy genspider 爬虫名称 网址
    

    需注意:

    • 爬虫名和项目名称需要不同;
    • 网址为去掉http(s)😕/的余下部分,scrapy会自动生成该头部,默认为http://,如需要https://头部,生成后请在文件内修改。
  3. 项目中新建main.py文件作为程序主入口

    from  scrapy import cmdline
    cmdline.execute('scrapy crawl 爬虫名称'.split())
    

    完成后,项目目录如下图:

    ![](/Users/kevin/Downloads/屏幕快照 2019-01-18 09.27.00.png)

    • test_spider.py—爬虫xpath及正则表达式
    • items.py—爬虫数据结构设置
    • main.py—程序主入口
    • middlewares.py—中间件
    • pipelines.py—管道
    • setting.py—爬虫设置
    • scrapy.cfg—项目设置
  4. 设置爬虫,修改setting.py文件,找到以下设置,取消注释。

     
  5. 编写爬虫数据结构—items.py

  6. 编写xpath及正则表达式—test_spider.py

     
  7. 编写管道—pipelines.py

    pymongo 可能需要在终端内使用pip3 install pymongo安装

     
  8. 编写中间件—middleares.py,伪装爬虫

     

运行结果

控制台输出较长,只截取部分内容

数据库截图(部分数据):


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部