urllib库认证,代理,cookie
认证,代理,cookie
1from urllib.request import HTTPBasicAuthHandler, HTTPPasswordMgrWithDefaultRealm, build_opener
2from urllib.error import URLError
3from urllib import request,parse
4from urllib.request import ProxyHandler, build_opener
5import ssl
6import http.cookiejar, urllib.request
7
8ssl._create_default_https_context = ssl._create_unverified_context
9
10
11'''验证'''
12def studyAuth():
13 username = 'username'
14 password = 'password'
15 url = 'http://localhost:5000/'
16 p = HTTPPasswordMgrWithDefaultRealm()
17 p.add_password(None, url, username, password)
18 auth_handle = HTTPBasicAuthHandler(p)
19 opener = build_opener(auth_handle)
20
21 try:
22 result = opener.open(url)
23 html = result.read().decode('utf-8')
24 print(html)
25 except URLError as e:
26 print(e.reason)
27
28studyAuth()
29
30'''代理'''
31def studyProxy():
32 proxy_handle = ProxyHandler({
33 'http': 'http:127.0.0.1:9743',
34 'https': 'https:127.0.0.1:9743'
35 })
36 opener = build_opener(proxy_handle)
37 try:
38 response = opener.open('https://www.baidu.com')
39 print(response.read().decode('utf-8'))
40 except URLError as e:
41 print(e.reason)
42
43studyProxy()
44
45'''cookie'''
46def studyCookie():
47 cookie = http.cookiejar.CookieJar()
48 handle = urllib.request.HTTPCookieProcessor(cookie)
49 opener = urllib.request.build_opener(handle)
50 response = opener.open('https://www.baidu.com')
51 for item in cookie:
52 print(item.name)
53 print(item.value)
54 print(item.name + '=' + item.value)
55
56def studyCookie1():
57 filename = 'cookie.txt'
58 cookie = http.cookiejar.LWPCookieJar(filename)
59# cookie = http.cookiejar.MozillaCookieJar(filename)
60 handle = urllib.request.HTTPCookieProcessor(cookie)
61 opener = urllib.request.build_opener(handle)
62 response = opener.open('http://www.baidu.com')
63 cookie.save(ignore_discard=True, ignore_expires=True)
64
65'''读取利用生成的cookie文件'''
66def studyCookie2():
67 cookie = http.cookiejar.LWPCookieJar()
68 cookie.load('cookie.txt', ignore_expires=True, ignore_discard=True)
69 handle = urllib.request.HTTPCookieProcessor(cookie)
70 opener = urllib.request.build_opener(handle)
71 response = opener.open('http://www.baidu.com')
72 print(response.read().decode('utf-8'))
73
74studyCookie2()
urllib库认证,代理,cookie的更多相关文章
- Python3 urllib库和requests库
1. Python3 使用urllib库请求网络 1.1 基于urllib库的GET请求 请求百度首页www.baidu.com ,不添加请求头信息: import urllib.requests d ...
- 4-urllib库添加代理,添加请求头格式 模板
urllib 库设置代理的方法 案例如下:
- python爬虫 - Urllib库及cookie的使用
http://blog.csdn.net/pipisorry/article/details/47905781 lz提示一点,python3中urllib包括了py2中的urllib+urllib2. ...
- 第三百二十九节,web爬虫讲解2—urllib库爬虫—ip代理—用户代理和ip代理结合应用
第三百二十九节,web爬虫讲解2—urllib库爬虫—ip代理 使用IP代理 ProxyHandler()格式化IP,第一个参数,请求目标可能是http或者https,对应设置build_opener ...
- urllib库利用cookie实现模拟登录慕课网
思路 1.首先在网页中使用账户和密码名登录慕课网 2.其次再分析请求头,如下图所示,获取到请求URL,并提取出cookie信息,保存到本地 3.最后在代码中构造请求头,使用urllib.request ...
- 爬虫之urllib库
一.urllib库简介 简介 Urllib是Python内置的HTTP请求库.其主要作用就是可以通过代码模拟浏览器发送请求.它包含四个模块: urllib.request :请求模块 urllib.e ...
- python3爬虫之Urllib库(二)
在上一篇文章中,我们大概讲了一下urllib库中最重要的两个请求方法:urlopen() 和 Request() 但是仅仅凭借那两个方法无法执行一些更高级的请求,如Cookies处理,代理设置等等 ...
- Python3爬虫一之(urllib库)
urllib库是python3的内置HTTP请求库. ython2中urllib分为 urllib2.urllib两个库来发送请求,但是在python3中只有一个urllib库,方便了许多. urll ...
- python3中urllib库的request模块详解
刚刚接触爬虫,基础的东西得时时回顾才行,这么全面的帖子无论如何也得厚着脸皮转过来啊! 原帖地址:https://www.2cto.com/kf/201801/714859.html 什么是 Urlli ...
随机推荐
- java数据结构1--数组、排序和Arrays工具类
数组:Array 数组的定义 数组的内存结构 数组定义常见问题 数组常见操作 Java参数传递问题--值传递 二维数组 1.数组概念 同一种类型数据的集合,可以是基本数据类型,也可以是引用数据类型. ...
- iOS弹窗UIAlertAction用法
UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"确认" message:@&quo ...
- ERROR 1040 (08004): Too many connections
ERROR 1040 (08004): Too many connections 长期一来,mysql低版本中,当面对连接数陡增而出现too many connections时,往往比较棘手.今天特意 ...
- CSS设置背景色
最好用background-color:rgba(37,77,113,1); 因为用opacity会让所有自标签都改变
- BZOJ 4289: PA2012 Tax Dijkstra + 查分
Description 给出一个N个点M条边的无向图,经过一个点的代价是进入和离开这个点的两条边的边权的较大值,求从起点1到点N的最小代价.起点的代价是离开起点的边的边权,终点的代价是进入终点的边的边 ...
- 类锁和对象锁,synchronized修饰static方法与非static方法的区别
当synchronized修饰一个static方法时,多线程下,获取的是类锁(即Class本身,注意:不是实例), 作用范围是整个静态方法,作用的对象是这个类的所有对象. 当synchronized修 ...
- phpcms v9 更改首页
phpcms v9的默认首页是(域名/index.php?m=content&c=index&a=init)那为什么你直接敲一个域名它就自己进 去了呢,其实在caches-->c ...
- Starting MySQL... ERROR! The server quit without updating PID file (/usr/local/mysql/data/VM_0_6_centos.pid)
刚接触MySql数据库,参考一些文章后搭建起来了也创建了数据库,程序跑到很好,一觉醒来突然连接不上了 MySql数据库了. 研究了好一会才找到原因. 现象: 登录数据库失败 [root@VM_0_6_ ...
- Fatal error: Class 'think\db' not found
在model层写了一个查询语句结果报错 Fatal error: Class 'think\db' not found $list= Db::table('m_my_reserve_assess' ...
- 一个”.java”源文件中是否可以包含多个类(不是内部类)?有什么限制
这个是可以的,一个“.java”源文件里面可以包含多个类,但是只允许有一个public类,并且类名必须和文件名一致. 每个编译单元只能有一个public 类.这么做的意思是,每个编译单元只能有一个公开 ...