Skr-Eric的爬虫课堂(八)——爬虫的最后一些项目和手机抓包等知识点

生成器(yield)

  1、yield作用 :把1个函数当做1个生成器来使用

  2、yield特点 :让函数暂停,等待下一次调用

 

项目 :Csdn

  1、知识点 :yield、pipelines.py

  2、网址:https://blog.csdn.net/zhuimengshaonian66/article/details/84473444

  3、目标

    标题 : //h1[@class="title-article"]/text()

    发表时间 : //span[@class="time"]/text()

    阅读数 : //span[@class="read-count"]/text()

  4、步骤

    1、创建项目

    2、定义爬取数据结构

    3、创建爬虫程序

    4、写管道文件

    5、全局配置文件

    6、运行爬虫

 

知识点

  1、extract() :获取选择器对象中的文本内容

    response.xpath('') 得到的结果为选择器对象的列表

  2、pipelines.py中必须有1个函数叫:

    def process_item(self,item,spider):

        return item

  3、爬虫程序中,start_urls必须为列表

 

项目 :Daomu

  1、URL :http://www.daomubiji.com/dao-mu-bi-ji-1

  2、爬取目标

    1、书的名称  

      //h1[@class="focusbox-title"]/text()

    2、

      //article[@class="excerpt excerpt-c3"]/a/text()

      书的标题

      章节数量

      章节名称

    3、

      //article[@class="excerpt excerpt-c3"]/a/@href

      章节链接

 

MongoDB

  1、在settings.py中定义相关变量

    MONGODB_HOST =

    MONGODB_PORT =

    MONGODB_DATABASE =

    MONGODB_TABLE =

  2、在pipelines.py中添加项目管道

    class DaomuMongoPipeline(object):

        def __init__(self):

    ... ...

def process_item(self,item,spider):

    ... ...

  3、在settings.py中设置项目管道

    ITEM_PIPELINES = {

         'Daomu.pipelines.DaomuMongoPipeline':200,

        }

MySQL使用同MongoDB

Scrapy设置log :settings.py

  # 设置log级别

  LOG_LEVEL = "DEBUG"

  # 指定本地log文件

  LOG_FILE = "daomu.log"

  5层日志级别

    CRITICAL :严重错误

    ERROR    :一般错误

    WARNING  :警告信息

    DEBUG    :调试信息

    INFO     :一般信息

 

腾讯招聘网站案例

  1、URL

    https://hr.tencent.com/position.php?start=0

    https://hr.tencent.com/position.php?start=10

  2、Xpath匹配

    //tr[@class="odd"] | //tr[@class="even"]

    职位名称 : ./td[1]/a/text()

    详情链接 : ./td[1]/a/@href

    职位类别 : ./td[2]/text()

    招聘人数 : ./td[3]/text()

    工作地点 : ./td[4]/text()

    发布时间 : ./td[5]/text()

 

Fiddler抓包工具使用

  1、抓包工具设置

    1、Tools->Options->HTTPS-> ...from browsers...

       Actions->Trust root Certificate

    2、Tools->Options->connections : 设置端口:8888

    3、重启Fiddler抓包工具

  2、设置浏览器代理

    1、Proxy SwitchOmega -> 选项 -> 新建情景模式 -> HTTP 127.0.0.1 8888 -> 左下角 应用选项

    2、点击浏览器右上角图标 -> AID1807 ->上网

  3、Fiddler常用选项

    1、选项卡 :Inspectors

       Headers : 请求报头

       WebForms: POST请求表单数据(在body中)

       Raw     : 以文本形式显示整个请求信息

 

设置手机抓包

  1、Fiddler

  2、在手机上安装证书

    1、打开手机浏览器:http://IP地址:8888

       ## IP地址为电脑的IP地址(ipconfig)

    2、在页面上下载(FiddlerRoot certificate)

       下载文件名 :FiddlerRoot.cer

    3、安装

  3、设置手机代理

    1、打开手机已连接的无线,代理设置->改成手动

    2、输入IP地址 :你电脑的IP

       输入端口号 :8888

 

  • 文章中的项目可以通过公众号后台获取

 

 

 

想要看更多的课程请微信关注SkrEric的编程课堂

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值