urllib库认证,代理,cookie

Posted gxj521test

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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库

python爬虫入门教程--优雅的HTTP库requests

python爬虫入门教程--优雅的HTTP库requests

Requests库详解

urllib库利用cookie实现模拟登录慕课网

Python3中urllib详细使用方法(header,代理,超时,认证,异常处理)