本文以识货进行举例

文章目录

  • 充分利用谷歌浏览器
  • 找到我们想要的API数据
  • 观察请求头
  • 观察参数
  • 结果

充分利用谷歌浏览器

谷歌浏览器可以模仿手机进行对网页的访问

点击上面的图标就可以选择模仿手机对网页的访问,还可以选择具体的型号

找到我们想要的API数据

我搜索了名为Nike Odyssey React的鞋

在网络的请求中可以看到名为getSupplier的请求中包含了我们想要的数据

观察请求头


这就是模仿手机进行访问的请求头,可以直接写入headers

headers = {'Accept': 'application/json','Content-Type': 'application/x-www-form-urlencoded','Origin': 'http://m.shihuo.cn','Referer': 'http://m.shihuo.cn/sports/detail/98310.html,'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1','X-Requested-With': 'XMLHttpRequest'
}

观察参数

请求中已经包含了将要请求的链接

但是仔细观察整个请求

会发现还有一些参数没有加入到链接中

form_data = {'id': '98310','page': '1','page_size': '5','style_id': '','supplier_id': '','size': ''
}

结果

完整代码

import requests
import jsonheaders = {'Accept': 'application/json','Content-Type': 'application/x-www-form-urlencoded','Origin': 'http://m.shihuo.cn','Referer': 'http://m.shihuo.cn/sports/detail/98310.html','User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1','X-Requested-With': 'XMLHttpRequest'
}form_data = {'id': '98310','page': '1','page_size': '5','style_id': '','supplier_id': '','size': ''
}url = 'http://m.shihuo.cn/sports/getSupplier/'
r = requests.get(url, params=form_data, headers=headers)
json_data = json.loads(r.text)
print(r.headers)
print(json_data["data"]["filter"])

为了验证是否真的通过模拟手机端来进行访问,打印返回的头部信息

仔细观察发现和浏览器显示的返回的头部信息是一样的

当我们使用电脑访问时,返回的是


确实不一样,大功告成!

模拟手机端来爬取数据相关推荐

  1. 如何从twitter上爬取数据?

    如何从twitter上获取数据 这段时间在做毕设,需要从twitter上获取一些数据.过程中遇到了很多坑,在这里和大家分享一下~ 首先,这个流程是怎样的呢? 你需要一架梯子 你需要有一个twitter ...

  2. python爬去新浪微博_!如何通过python调用新浪微博的API来爬取数据

    python抓取新浪微博,求教 爬手机端 可以参考的代码, #-*-coding:utf8-*- import smtplib from email.mime.text import MIMEText ...

  3. python爬取新闻并归数据库_Python爬取数据并写入MySQL数据库操作示例

    Python爬取数据并写入MySQL数据库的实例 首先我们来爬取 http://html-color-codes.info/color-names/ 的一些数据. 按 F12 或 ctrl+u 审查元 ...

  4. python requests 爬取数据

    python requests 爬取数据 import requests from lxml import etree import time import pymysql import json h ...

  5. python3爬取数据存入mysql_Python如何爬取51cto数据并存入MySQL

    实验环境 1.安装Python 3.7 2.安装requests, bs4,pymysql 模块 实验步骤1.安装环境及模块 2.编写代码 ? 1 2 3 4 5 6 7 8 9 10 11 12 1 ...

  6. Jsoup:用Java也可以爬虫,怎么使用Java进行爬虫,用Java爬取网页数据,使用Jsoup爬取数据,爬虫举例:京东搜索

    Jsoup:用Java也可以爬虫,怎么使用Java进行爬虫,用Java爬取网页数据,使用Jsoup爬取数据,爬虫举例:京东搜索 一.资源 为什么接下来的代码中要使用el.getElementsByTa ...

  7. python爬去百度文库_利用Python语言轻松爬取数据[精品文档]

    利用 Python 语言轻松爬取数据 对于小白来说,爬虫可能是一件非常复杂. 技术门槛很高的事情. 比如有人认为学爬虫必须精通 Python ,然后哼哧哼哧系统学习 Python 的每个知识点,很久之 ...

  8. python爬取mysql数据_Python爬取数据并写入MySQL数据库的实例

    Python爬取数据并写入MySQL数据库的实例 来源:中文源码网    浏览: 次    日期:2018年9月2日 [下载文档:  Python爬取数据并写入MySQL数据库的实例.txt ] (友 ...

  9. 爬虫篇——selenium(webdriver)进行用户登录并爬取数据)

    爬虫篇--selenium(webdriver)进行用户登录并爬取数据 摘要 (一)创建browser对象 (二)用户登录 (三)数据爬取 摘要 本文主要介绍了如何通过selenium使用Chorme ...

最新文章

  1. cout 数组_C语言学习笔记(十)二维数组内存预设
  2. python中的静态方法和类方法
  3. 使用jQuery实现图片懒加载原理
  4. Iterator 遍历器的简单使用
  5. mozilla开源项目学习----智能指针(AutoPtrAutoArrayPtr)(上)
  6. rx560d linux 图形设计,RX560D与560区别对比:RX 560D和RX 560哪个好
  7. python打印输出如下图形_python题目要求:输出如下图片中的图形
  8. java超级玛丽代码_java版超级玛丽源代码
  9. keil uvisoin软件打开他人的工程文件上面出现黄色感叹号警告标志,后续编译不能生成.o文件而报错
  10. 三炮的三舅走了,才发觉日子真的不经念叨呀!
  11. 负雪明烛开通公众号啦~ 欢迎关注「负雪明烛」
  12. 电脑(伪)大神装B必备,来学几个windows脚本命令
  13. 如何“避雷”(化解风险)
  14. SCI 论文投稿时该如何撰写 Highlights?
  15. 前三周学习Python的心得与感受
  16. 梯度下降和正规方程的区别
  17. linux电脑mac地址修改不了怎么办,linux下修改MAC地址问题解决方法
  18. android菜单栏设置位置,android系统设置setting菜单在哪
  19. 硬核开源:动漫生成器让照片秒变手绘日漫风!!!
  20. 复变函数与积分变换习题收藏系列(一)——复数的性质与运算

热门文章

  1. java oio与bio_OIO在java中意味着什么?
  2. Android多进程从头讲到尾,成功定级腾讯T3-2
  3. 一些融会贯通的知识点----持续更新
  4. 某些Win10无法进入安全模式的修复
  5. 华为路由器交换机常用命令(随时补充更新)
  6. 张正友相机标定Opencv实现程序(ubuntu下)
  7. 产品学习:智能生产调度管理系统
  8. 中国区块链行业人才缺口将达75万以上
  9. [足式机器人]Part1 运动控制的替代方法Ch06——【Legged Robots that Balance 读书笔记】
  10. python 气泡图 聚类_R可视化 | 气泡图