Python | 其实爬虫也有套路(附赠书获奖名单)

通用爬虫套路

在刚刚接触Python爬虫的时候常常会有无从下手的感觉,于是咸鱼整理了简单爬虫的通用套路,没有思路的时候看一下吧。

准备url
  • 准备start url
    • 页码总数不确定,规律不明显
    • 通过代码提取下一页地址
    • 使用xpath提取url
    • 寻找url地址,部分参数在当前页面中,比如当前页码数和总页码数,使用这两个参数构建url
  • 准备url list
    • 页码总数清楚
    • url 地址规律明显
发送请求,获取响应
  • 添加随机user-agent,反反爬虫
  • 添加随机代理ip,反反爬虫
  • 在对方判断我们是爬虫之后应该添加更多的headers字段,包含cookie
  • cookie的处理可以使用session来解决
  • 准备一堆能用的cookie,组成cookie池。
  • 如果不登录
    • 准备刚刚开始能够成功请求的cookie,即接收对方网站设置在response的cookie
  • 如果登录
    • 准备多个账号
    • 使用程序获取每个账号的cookie
    • 请求登录之后才能访问的网站随机选择上一步获取的cookie
提取数据
  • 确定数据的位置
    • 如果数据在当前的url地址中
    • 提取的是列表页中的数据
    • 直接请求列表页的url地址,不用进入详情页
    • 提取详情页的数据
    • 1.确定url
    • 2.发送请求
    • 3.提取数据
    • 4.返回
    • 如果数据不在当前的url地址中
    • 在其他响应中,寻找数据的位置
    • 在network中从上而下找
    • 使用chrome中的过滤条件,选择除了js,css, image之外的按钮
    • 使用chrome的serach all file,搜索数字和英文
  • 数据的提取
    • xpath,从html中提取整块的数据,先分组,之后每一组在提取
    • re,提取max_time,html等
    • json
保存数据
  • 保存在本地json ,csv,text
  • 保存在数据库

本文分享自微信公众号 - 咸鱼学Python(xianyuxuepython)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2018-08-16

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券