Python爬虫学习笔记-2.Requests库
发布日期:2021-06-29 12:37:36 浏览次数:4 分类:技术文章

本文共 2783 字,大约阅读时间需要 9 分钟。

  Requests是Python的一个优雅而简单的HTTP库,它比Pyhton内置的urllib库,更加强大。

0X01 基本使用

  安装 Requests,只要在你的终端中运行这个简单命令即可:

pip install requests

  基本HTTP 请求类型:

r = requests.get('http://httpbin.org/get')r = requests.post("http://httpbin.org/post")r = requests.put("http://httpbin.org/put")r = requests.delete("http://httpbin.org/delete")r = requests.head("http://httpbin.org/get")r = requests.options("http://httpbin.org/get")

  简单的一个请求:

import requestsr = requests.get('http://192.168.125.129/config/sql.php?id=1')print r.headersprint r.status_codeprint r.urlprint r.textprint r.content

  GET方式:

import requestspayload ={
'id':1}r = requests.get('http://192.168.125.129/config/sql.php',params=payload)print r.urlprint r.content

  POST方式:

import requestspayload ={
'id':1}r = requests.post('http://192.168.125.129/config/sql.php',data=payload)print r.content

0X02 高级用法

1、设置headers

import requestsurl='http://192.168.125.129/config/sql.php?id=1'headers={
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:55.0) Gecko/20100101 Firefox/55.0'}r= requests.get(url,headers=headers)print r.text

 2、模拟登录和抓取数据的简单示例

s = requests.session()data = {
'user':'用户名','passdw':'密码'}#post 换成登录的地址,res=s.post('http://www.xxx.com/login.php',data);#换成抓取的地址s.get('http://www.xxx.com/admin/config.php');

 3、已知cookie,进行登录

import requestsraw_cookies="PHPSESSID=0c1e5a748e064e93e91cca1714708339; security=impossible"cookies={}for line in raw_cookies.split(';'):      key,value=line.split('=',1)    cookies[key]=value  testurl='http://192.168.125.129/vulnerabilities/upload/'  s=requests.get(testurl,cookies=cookies)  print s.text

 4、SSL证书验证问题

result=requests.get('https://www.v2ex.com', verify=False)

忽略验证SSL证书,不然会报错

  5、302重定向

result=s.post(loginUrl,data=postdata,headers=header,verify=False,allow_redirects=False)

   6、使用Python Requests上传表单数据和文件

import requestsurl = "http://www.xxx.cn/upload.php"files ={
"username":(None,"test"), 'filename':('1.jpg',open('1.jpg','rb'),'image/jpeg'), "password":(None,"test123!")}res = requests.post(url, files=files)print res.request.bodyprint res.request.headers

输出请求体、请求头效果如下:

--5e800fd12507423aa2e4a024db7b1fa1Content-Disposition: form-data; name="username"test--5e800fd12507423aa2e4a024db7b1fa1Content-Disposition: form-data; name="password"test123!--5e800fd12507423aa2e4a024db7b1fa1Content-Disposition: form-data; name="filename"; filename="1.jpg"Content-Type: image/jpeg11111111111111111111111111111111111111111111111--5e800fd12507423aa2e4a024db7b1fa1--{
'Content-Length': '667', 'Accept-Encoding': 'gzip, deflate', 'Accept': '*/*', 'User-Agent': 'python-requests/2.12.4', 'Connection': 'keep-alive', 'Content-Type': 'multipart/form-data; boundary=5e800fd12507423aa2e4a024db7b1fa1'}

 

 

参考资料:

   http://cn.python-requests.org/zh_CN/latest/user/quickstart.html

 

转载地址:https://bypass.blog.csdn.net/article/details/81256025 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Bypass 360主机卫士SQL注入防御(附tamper脚本)
下一篇:XSS payload 大全

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月07日 09时32分54秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

【技术分享】使用AES加密技术保障数据安全 2019-04-29
【应用实例】布线多?成本高?不可靠?泽耀方案没烦恼! 2019-04-29
数据可视化工具:Matplotlib绘图 2019-04-29
用Python写个超级小恐龙跑酷游戏,上班摸鱼我能玩一天 2019-04-29
闺蜜看我用Python画了一幅樱花图,吵着要我给他介绍程序员小哥哥 2019-04-29
【Python爬虫实战】知乎热榜数据采集,上班工作摸鱼两不误,知乎热门信息一网打尽 2019-04-29
自从我学会了数据挖掘Matplotlib、Numpy、Pandas、Ta-Lib等一系列库,我把领导开除了 2019-04-29
Python抓取哔哩哔哩up主信息:只要爬虫学的好,牢饭吃的早 2019-04-29
有个码龄5年的程序员跟我说:“他连wifi从来不用密码” 2019-04-29
领导让我整理上个季度的销售额,幸好我会Python数据分析,你猜我几点下班 2019-04-29
【Python爬虫实战】为何如此痴迷Python?还不是因为爱看小姐姐图 2019-04-29
零基础自学Python,你也可以实现经济独立! 2019-04-29
ElasticSearch与Mysql对比(ElasticSearch常用方法大全,持续更新) 2019-04-29
数字化转型的主干道上,华为云以“三大关键”成企业智能化推手 2019-04-29
数字化为何不走“捷”“径”? 2019-04-29
和总裁、专家交朋友,华为云助推政企智能化升级又做到前面去了 2019-04-29
BCOP章鱼船长,6月22日晚上8点上线薄饼 2019-04-29
为战疫助力,半导体功不可没 2019-04-29
了解这些操作,Python中99%的文件操作都将变得游刃有余! 2019-04-29
知道如何操作还不够!深入了解4大热门机器学习算法 2019-04-29