对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计算时间差的方法
May 20 Python
python实现上传下载文件功能
Nov 19 Python
深入浅出分析Python装饰器用法
Jul 28 Python
python实现自主查询实时天气
Jun 22 Python
python 实现交换两个列表元素的位置示例
Jun 26 Python
Python中顺序表原理与实现方法详解
Dec 03 Python
numpy按列连接两个维数不同的数组方式
Dec 06 Python
django实现更改数据库某个字段以及字段段内数据
Mar 31 Python
Python 跨.py文件调用自定义函数说明
Jun 01 Python
Python基于数列实现购物车程序过程详解
Jun 09 Python
python爬虫爬取淘宝商品比价(附淘宝反爬虫机制解决小办法)
Dec 03 Python
Spy++的使用方法及下载教程
Jan 29 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
全国FM电台频率大全 - 5 内蒙古自治区
2020/03/11 无线电
利用static实现表格的颜色隔行显示的代码
2007/09/02 PHP
php 正则匹配函数体
2009/08/25 PHP
Windows和Linux中php代码调试工具Xdebug的安装与配置详解
2014/05/08 PHP
PHP中非常有用却鲜有人知的函数集锦
2019/08/17 PHP
PHP+redis实现的限制抢购防止商品超发功能详解
2019/09/19 PHP
一端时间轮换的广告
2006/06/26 Javascript
Prototype使用指南之ajax
2007/01/10 Javascript
用javascript删除当前行,添加行(示例代码)
2013/11/25 Javascript
js读写cookie实现一个底部广告浮层效果的两种方法
2013/12/29 Javascript
jQuery产品间断向下滚动效果核心代码
2014/05/08 Javascript
node.js中的fs.lstat方法使用说明
2014/12/16 Javascript
JavaScript的jQuery库中ready方法的学习教程
2015/08/14 Javascript
基于javascript实现listbox左右移动
2016/01/29 Javascript
JS中如何比较两个Json对象是否相等实例代码
2016/07/13 Javascript
JavaScript实现分页效果
2017/03/28 Javascript
Angular中$broadcast和$emit的使用方法详解
2017/05/22 Javascript
js es6系列教程 - 新的类语法实战选项卡(详解)
2017/09/02 Javascript
js中this对象用法分析
2018/01/05 Javascript
微信小程序的mpvue框架快速上手指南
2019/05/15 Javascript
解决Layui中layer报错的问题
2019/09/03 Javascript
微信小程序实现点击按钮后修改颜色
2019/12/05 Javascript
js实现树形数据转成扁平数据的方法示例
2020/02/27 Javascript
跟老齐学Python之Import 模块
2014/10/13 Python
磁盘垃圾文件清理器python代码实现
2020/08/24 Python
python中使用psutil查看内存占用的情况
2018/06/11 Python
Python查找文件中包含中文的行方法
2018/12/19 Python
Python发展史及网络爬虫
2019/06/19 Python
Python+opencv 实现图片文字的分割的方法示例
2019/07/04 Python
python+jinja2实现接口数据批量生成工具
2019/08/28 Python
基于CentOS搭建Python Django环境过程解析
2020/08/24 Python
使用pandas读取表格数据并进行单行数据拼接的详细教程
2021/03/03 Python
梅西百货官网:Macy’s
2020/08/04 全球购物
土地租赁意向书
2014/07/30 职场文书
12.4法制宣传日活动总结
2014/08/26 职场文书
考研英语复习计划
2015/01/19 职场文书