鱼C论坛

 找回密码
 立即注册
查看: 5484|回复: 4

[技术交流] 【Requests】HTTP for humans.

[复制链接]
发表于 2015-4-3 13:13:47 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x

安装:
1. 自己去pypi上下载。
2. pip install requests(推荐。)
import requests不报错即为安装成功。
  1. >>> import requests
  2. >>>
复制代码

笔记:
他可以自动识别大部分网页的编码形式,自动获取html头部的charset。
简单的请求操作:
      
  1. r = requests.get("http://bbs.fishc.com/")
复制代码

        以get方式请求某页面。
        这样就得到了一个Request对象。
      
  1. <Response [200]>
复制代码

        200表示正常打开。其他HTTP状态码请>>>>点我<<<<
        r.text   会将html页面以文本形式打印。包括缩进格式。
        r.content  将html页面以二进制文本打印。不包含缩进格式。以b开头的字符串。
        r.url查看当前的url。
        params参数。将键值对(字典形式)转换成url附加访问。
      
  1. content = {'mod':'forumdisplay', 'fid':'243', 'filter':'typeid', 'typeid':'403'}
  2. r = requests.get("http://bbs.fishc.com/forum.php", params=content)
  3. print(r.url)
  4. >>>
  5. http://bbs.fishc.com/forum.php?fid=243&typeid=403&mod=forumdisplay&filter=typeid
复制代码

        r.encoding = 'utf-8'  设置本页面的编码格式。大部分可以自动获取到。不过有的网站设置的是gb2312但是获取下来还是乱码得手动改成gbk。
        r.cookies 获取当前的cookies如果有的话。

      
  1. r = requests.post("http://bbs.fishc.com/")
复制代码

        以post方式请求某页面。
        属性与get方式并没太多不同。
        定制请求头:
      
  1. headers = {
  2.         'Proxy-Connection': 'keep-alive',
  3.         'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
  4.         'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2272.101 Safari/537.36',
  5.         'Content-Type': 'application/x-www-form-urlencoded',
  6.         'Accept-Encoding': 'gzip, deflate',
  7.         'Accept-Language': 'zh-CN,zh;q=0.8'
  8. }
复制代码


        r = requests.post('http://bbs.fishc.com', headers=headers)
        这些数据可以通过抓包或者审查元素得到。在get里加上头信息也是可以的。
        提交表单数据。
  1. data = {
  2.         'formhash': 'b0ac2827',
  3.         'referer': 'http://bbs.fishc.com/portal.php',
  4.         'loginfield': 'username',
  5.         'username': 'wei_Y',
  6.         'password': 'masaike',
  7.         'questionid': '0',
  8.         'answer': '',
  9.         'loginsubmit': 'true'
  10. }
复制代码

       抓包得到的登陆信息。
       不过我在尝试登陆的时候发现一直提示有非法字符。一直通不过。
      

      更多信息可以查看文档或此贴:
      http://blog.csdn.net/iloveyin/article/details/21444613  




评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +5 收起 理由
戴宇轩 + 5 + 5 + 5 感谢楼主无私奉献!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-8-13 00:16:11 | 显示全部楼层
楼主这是要干嘛?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2015-11-15 17:26:08 | 显示全部楼层
楼主怎么把自己密码贴出来了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-12-22 13:54:21 | 显示全部楼层
谢谢楼主啊,我正在找关于requests 的资料
想用 Python做接口方面的测试
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-2-4 17:30:40 | 显示全部楼层
应该是得到一个Response对象吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-3-28 18:31

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表