python 爬取快手数据
环境: python 3.5 + win8.1
工具:fiddler postman 逍遥模拟器
首先使用fiddler抓取app数据,打开快手,刷新,可以看到会有很多的http/https请求,找到快手首页数据加载请求。
请求数据格式分析:post请求,header 是dictionary形式,data是字符串形式。(data不可以写成dict方式)
打开psotman测试
form-data方式提交报错
换成raw方式提交,报错信息改变
加上headers
成功返回数据,测试几次,发现返回结果不同,数据不存在重复
import requestsdef getData():url = 'http://apissl.gifshow.com/rest/n/feed/hot?isp=CMCC&mod=HUAWEI(DUK-AL20)&lon=121.492379&country_code=cn&kpf=ANDROID_PHONE&extId=b31ce9a7bacb2f567efe7aff2b7374b2&did=ANDROID_066f7438a673e208&kpn=KUAISHOU&net=WIFI&app=0&oc=XIAOMI&ud=561252472&hotfix_ver=&c=XIAOMI&sys=ANDROID_5.1.1&appver=6.6.6.10150&ftt=&language=zh-cn&iuid=&lat=31.247192&did_gt=1585204347787&ver=6.6&max_memory=192'data = 'type=7&page=1&coldStart=true&count=10&pv=false&id=27&refreshTimes=0&pcursor=&source=1&extInfo=Ql8KhQ1TWK3G%2FBbYoGCWMyeL5iDBfPA%2FidqooiNmt6Sv37LFyINoRqajhRM13g6jvLoVaFQw%2FC3VuLeniF%2Ft5uIEuVPBTdVWblmJF%2FVO%2BF5Li9n6yXafEiuGnWoFc9zvZgr4YkxHP9pltJvuTY410DjWMaCil2VEd36XsCZpmWw%3D&needInterestTag=false&browseType=1&seid=253e59e9-a137-42dd-b291-d957f43c8cf8&volume=0.73&backRefresh=false&__NStokensig=c4cb4271f3211c34c16d5cd834e98ebda150c6d957cb82bdf8e1a95ffeb304e2&kuaishou.api_st=Cg9rdWFpc2hvdS5hcGkuc3QSoAG2q0g-deb-tNjkILe6FTBSUwhf_6370CSDML5jTC-YDUhKtu4CRYvHyXm9wwmV1QAfyzb9TzHaVqol-DGyQLQFfZcfDc3IwVQ5lm5sQiaIwzk31MWR_BL6CXpncKcN3jdqNINZ0AEiBBft8RF8OgGRkK4K0Ia3jsH-M8Ur_jajTALiR5BQeEWSDyUtJy1vE48Gheu9i4prF6y3kVkvXJLFGhJey_IdJfJMt4oIXuVy7QAVNNEiIPGtBaWs1gYPdT7lm853QU351FcL0w-RSQ6bwUAxFxSzKAUwAQ&token=abd7df7449c64f46a562a313f74fc72d-561252472&client_key=3c2cd3f3&os=android&sig=29a919db9a8c66aff96c0e1e3dfc9031'headers = {'User-Agent': 'kwai-android','Content-Type': 'application/x-www-form-urlencoded'}html = requests.post(url, data=data, headers=headers, timeout=5)print(html.text)if __name__ == '__main__':getData()
总结:其实这种爬取快手方式有点投机取巧,因为post过去的参数 sig 是签名, 是有加密的,只所以还能返回数据是因为每次都是请求的一样的链接, page=1都是第一页的,当改成2的时候,就验签失败了。虽然达到了效果,但却没有能破解他的加密算法。
参考: https://www.cnblogs.com/binglansky/p/8483096.html
python 爬取快手数据相关推荐
- python爬取网页公开数据_如何用Python爬取网页数据
使用Python爬取网页数据的方法: 一.利用webbrowser.open()打开一个网站:>>> import webbrowser >>> webbrowse ...
- 编程python爬取网页数据教程_实例讲解Python爬取网页数据
一.利用webbrowser.open()打开一个网站: >>> import webbrowser >>> webbrowser.open('http://i.f ...
- Python爬取天气数据及可视化分析!
来源丨Python之王 Python爬取天气数据及可视化分析 说在前面 天气预报我们每天都会关注,我们可以根据未来的天气增减衣物.安排出行,每天的气温.风速风向.相对湿度.空气质量等成为关注的焦点.本 ...
- Python爬取的数据存为json文件,并读取
Python爬取的数据存为json文件,并读取 import requests import time from lxml import etree import jsondef json_data_ ...
- python爬虫教程:实例讲解Python爬取网页数据
这篇文章给大家通过实例讲解了Python爬取网页数据的步骤以及操作过程,有兴趣的朋友跟着学习下吧. 一.利用webbrowser.open()打开一个网站: >>> import w ...
- python爬取股票数据,以上证指数为例,可以爬取任何股票,保存为temp.csv文件
python爬取股票数据,以上证指数为例,可以爬取任何股票,保存为temp.csv文件 import requests import pandas as pd# market: 0:沪市 1:深市 # ...
- python爬取微博数据词云_用Python爬取微博数据生成词云图片
原标题:用Python爬取微博数据生成词云图片 欢迎关注天善智能 hellobi.com,我们是专注于商业智能BI,大数据,数据分析领域的垂直社区,学习.问答.求职,一站式搞定! 对商业智能BI.大数 ...
- 使用python爬取网站数据并写入到excel中
文章目录 前言 一.使用python爬取网上数据并写入到excel中 例子一: 例子二: 二.工具类 总结 前言 记录一下使用python将网页上的数据写入到excel中 一.使用python爬取网上 ...
- Python小姿势 - Python爬取网页数据
Python爬取网页数据 爬取网页数据是一个比较常见的Python应用场景,有很多第三方库可以帮助我们完成这个任务.这里我们介绍一下urllib库中的一个常用方法:urllib.request.url ...
最新文章
- 开始升级我的工作流系统
- Python语言学习 (七)1.1
- 2019-02-23-算法-进化
- mac下配置进行c和matlab混编
- C语言课后习题(42)
- 计算机专业的英语文献,计算机专业英语论文参考文献集 计算机专业英语英语参考文献哪里找...
- 《Spark大数据分析实战》——第2章Spark开发与环境配置
- java long 1 000_Java-基本数据类型
- GOF设计模式(概念、原则、场景、优点、缺点、应用)
- 全民健身下的体育消费,是怎么升级的?
- jav使用python模型实现方案
- 对象存储是什么?看过就明白了
- Redis 做网页UV统计
- 减员云售前可降本增效
- 对“剖析液晶屏逻辑板TFT偏压电路”一文的一点看法(上)
- 服务中读取当前用户注册表HKEY_CURRENT_USER
- 12个面向前端开发者真正有用的 VSCode 插件工具
- 精选20个高品质的免费素材,可以下载PSD格式
- sql语句查询某天、某周、某月、某年的数据
- 华为ensp基础实验(一)