对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求解最大公约数的实现方法
Aug 20 Python
python绘制直线的方法
Jun 30 Python
Django重置migrations文件的方法步骤
May 01 Python
python3实现猜数字游戏
Dec 07 Python
基于 Django 的手机管理系统实现过程详解
Aug 16 Python
python opencv图片编码为h264文件的实例
Dec 12 Python
Python定时从Mysql提取数据存入Redis的实现
May 03 Python
Django bulk_create()、update()与数据库事务的效率对比分析
May 15 Python
Python学习工具jupyter notebook安装及用法解析
Oct 23 Python
Python实现单例模式的5种方法
Jun 15 Python
Python实现简单的俄罗斯方块游戏
Sep 25 Python
如何在python中实现ECDSA你知道吗
Nov 23 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
PHP使用CURL实现对带有验证码的网站进行模拟登录的方法
2014/07/23 PHP
PHP获取表单所有复选框的值的方法
2014/08/28 PHP
PHPStrom中实用的功能和快捷键大全
2015/09/23 PHP
PHP中常见的缓存技术实例分析
2015/09/23 PHP
php无限分类使用concat如何实现
2015/11/05 PHP
php基于SQLite实现的分页功能示例
2017/06/21 PHP
为jquery.ui.dialog 增加“自动记住关闭时的位置”的功能
2009/11/24 Javascript
javascript 多浏览器 事件大全
2010/03/23 Javascript
来自qq的javascript面试题
2010/07/24 Javascript
JS返回上一页实例代码通过图片和按钮分别实现
2013/08/16 Javascript
纯Javascript实现Windows 8 Metro风格实现
2013/10/15 Javascript
JavaScript解析json格式数据简单示例
2014/12/09 Javascript
JS上传图片前实现图片预览效果的方法
2015/03/02 Javascript
JavaScript实现控制打开文件另存为对话框的方法
2015/04/17 Javascript
CSS中position属性之fixed实现div居中
2015/12/14 Javascript
浅析创建javascript对象的方法
2016/05/13 Javascript
jQuery中deferred对象使用方法详解
2016/07/14 Javascript
使用Node.js实现ORM的一种思路详解(图文)
2017/10/24 Javascript
JavaScript解析及序列化JSON的方法实例分析
2019/01/04 Javascript
python里对list中的整数求平均并排序
2014/09/12 Python
python @property的用法及含义全面解析
2018/02/01 Python
python+OpenCV实现车牌号码识别
2019/11/08 Python
python数据库编程 ODBC方式实现通讯录
2020/03/27 Python
浅谈Python中os模块及shutil模块的常规操作
2020/04/03 Python
CSS3实现曲线阴影和翘边阴影
2016/05/03 HTML / CSS
深入探究HTML5的History API
2015/07/09 HTML / CSS
潘多拉意大利官方网上商城:网上选购PANDORA珠宝
2018/10/07 全球购物
手工制作的音乐盒:Music Box Attic
2019/09/05 全球购物
文秘人员工作职责
2014/01/31 职场文书
2014两会学习心得:时代的发展
2014/03/17 职场文书
大学新学期计划书
2014/04/28 职场文书
教师党员个人自我剖析材料
2014/09/29 职场文书
党的群众路线批评与自我批评发言稿
2014/10/16 职场文书
售后服务质量承诺书
2015/04/29 职场文书
幼儿园门卫安全责任书
2015/05/08 职场文书
幼儿园班级工作总结2015
2015/05/25 职场文书