对python3标准库httpclient的使用详解


Posted in Python onDecember 18, 2018

如下所示:

import http.client, urllib.parse
import http.client, urllib.parse
import random

USER_AGENTS = [
 "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; AcooBrowser; .NET CLR 1.1.4322; .NET CLR 2.0.50727)",
 "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; Acoo Browser; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.0.04506)",
 "Mozilla/4.0 (compatible; MSIE 7.0; AOL 9.5; AOLBuild 4337.35; Windows NT 5.1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)",
 "Mozilla/5.0 (Windows; U; MSIE 9.0; Windows NT 9.0; en-US)",
 "Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 2.0.50727; Media Center PC 6.0)",
 "Mozilla/5.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 1.0.3705; .NET CLR 1.1.4322)",
 "Mozilla/4.0 (compatible; MSIE 7.0b; Windows NT 5.2; .NET CLR 1.1.4322; .NET CLR 2.0.50727; InfoPath.2; .NET CLR 3.0.04506.30)",
 "Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN) AppleWebKit/523.15 (KHTML, like Gecko, Safari/419.3) Arora/0.3 (Change: 287 c9dfb30)",
 "Mozilla/5.0 (X11; U; Linux; en-US) AppleWebKit/527+ (KHTML, like Gecko, Safari/419.3) Arora/0.6",
 "Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.2pre) Gecko/20070215 K-Ninja/2.1.1",
 "Mozilla/5.0 (Windows; U; Windows NT 5.1; zh-CN; rv:1.9) Gecko/20080705 Firefox/3.0 Kapiko/3.0",
 "Mozilla/5.0 (X11; Linux i686; U;) Gecko/20070322 Kazehakase/0.4.5",
 "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.0.8) Gecko Fedora/1.9.0.8-1.fc10 Kazehakase/0.5.6",
 "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11",
 "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_3) AppleWebKit/535.20 (KHTML, like Gecko) Chrome/19.0.1036.7 Safari/535.20",
 "Opera/9.80 (Macintosh; Intel Mac OS X 10.6.8; U; fr) Presto/2.9.168 Version/11.52",
 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36'
]

def get_demo(num,keyword):
 page = urllib.parse.urlencode({'page':num})
 params = urllib.parse.urlencode({})

 headers = {'Referer': 'http://t66y.com/index.php',
    'User-Agent': random.choice(USER_AGENTS )
    'Accept - Encoding': 'gzip, deflate',
    'Accept - Language': 'zh - CN, zh;q = 0.9',
    }
 conn = http.client.HTTPConnection("ttty.com", timeout=10)

 conn.request("GET", "/thread0806.php?fid=16&"+page, params, headers)

 r1 = conn.getresponse()

 data = r1.read().decode('gbk') # This will return entire content.
 content = data.find(keyword)

 if content != -1:
  print('bingo:'+page)
 else:
  print('try {},status:{}'.format(page, r1.status))


def post_demo():
 params = urllib.parse.urlencode({'qruuid': 'asdf', 'user_uuid': '3423412dfasf'})
 headers = {"Content-type": "application/x-www-form-urlencoded",
    "Accept": "application/json"}
 conn = http.client.HTTPSConnection("wx.coderr.cn")
 conn.request("POST", "/api/qrcode", params, headers)
 response = conn.getresponse()
 print(response.status, response.reason)

 if not response.closed:
  data = response.read()
  print(data, type(data.decode('utf-8')))

 conn.close()

if __name__ == '__main__':
 pass

以上这篇对python3标准库httpclient的使用详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python求pi的方法
Oct 08 Python
详解Python中for循环的使用
Apr 14 Python
Python工程师面试题 与Python Web相关
Jan 14 Python
Python3中使用urllib的方法详解(header,代理,超时,认证,异常处理)
Sep 21 Python
Django与JS交互的示例代码
Aug 23 Python
快速入门python学习笔记
Dec 06 Python
Python selenium实现微博自动登录的示例代码
May 16 Python
详解Python如何生成词云的方法
Jun 01 Python
python调用opencv实现猫脸检测功能
Jan 15 Python
Django logging配置及使用详解
Jul 23 Python
python正则表达式匹配IP代码实例
Dec 28 Python
pycharm设置默认的UTF-8编码模式的方法详解
Jun 01 Python
python 3.3 下载固定链接文件并保存的方法
Dec 18 #Python
python根据url地址下载小文件的实例
Dec 18 #Python
如何用python写一个简单的词法分析器
Dec 18 #Python
详解Python requests 超时和重试的方法
Dec 18 #Python
解决新django中的path不能使用正则表达式的问题
Dec 18 #Python
python 获取url中的参数列表实例
Dec 18 #Python
python 函数内部修改外部变量的方法
Dec 18 #Python
You might like
文件上传类
2006/10/09 PHP
javascript 小型动画组件与实现代码
2010/06/02 PHP
php中防止伪造跨站请求的小招式
2011/09/02 PHP
PHP引用(&)各种使用方法实例详解
2014/03/20 PHP
smarty模板引擎从配置文件中获取数据的方法
2015/01/22 PHP
thinkPHP+PHPExcel实现读取文件日期的方法(含时分秒)
2016/07/07 PHP
详解PHP处理密码的几种方式
2016/11/30 PHP
常用PHP封装分页工具类
2017/01/14 PHP
两个SUBMIT按钮,如何区分处理
2006/08/22 Javascript
jQuery LigerUI 使用教程入门篇
2012/01/18 Javascript
js操纵跨frame的三级联动select下拉选项实例介绍
2013/05/19 Javascript
一个简单的弹性返回顶部JS代码实现介绍
2013/06/09 Javascript
node.js学习总结之调式代码的方法
2014/06/25 Javascript
JavaScript中的类与实例实现方法
2015/01/23 Javascript
jQuery+CSS3实现树叶飘落特效
2015/02/01 Javascript
浅析AMD CMD CommonJS规范--javascript模块化加载学习心得总结
2016/03/16 Javascript
express文件上传中间件Multer详解
2016/10/24 Javascript
JS产生随机数的用法小结
2016/12/10 Javascript
基于BootstrapValidator的Form表单验证(24)
2016/12/12 Javascript
React学习之事件绑定的几种方法对比
2017/09/24 Javascript
代码详解JS操作剪贴板
2018/02/11 Javascript
vue中使用cropperjs的方法
2018/03/01 Javascript
vue同步父子组件和异步父子组件的生命周期顺序问题
2018/10/07 Javascript
layui-laydate时间日历控件使用方法详解
2018/11/15 Javascript
如何在JavaScript中创建具有多个空格的字符串?
2020/02/23 Javascript
js实现简单扫雷
2020/11/27 Javascript
Python中.join()和os.path.join()两个函数的用法详解
2018/06/11 Python
css3和jquery实现的可折叠导航菜单适合放在手机网页的导航菜单
2014/09/02 HTML / CSS
即时搜索数百万张门票:SeatsForEveryone.com
2018/08/26 全球购物
师范教师毕业鉴定
2014/01/13 职场文书
群众路线批评与自我批评
2014/02/06 职场文书
酒店管理失职检讨书
2014/09/16 职场文书
保险公司反洗钱宣传活动总结
2015/05/08 职场文书
2019军训心得体会
2019/06/27 职场文书
Python爬虫中urllib3与urllib的区别是什么
2021/07/21 Python
MySQL数据库之内置函数和自定义函数 function
2022/06/16 MySQL