python爬虫学习第三天

今天把第一节urllib.request看完了,感觉对如何用python模拟浏览器申请网页文档有了一个大概的了解。但感觉离入门还差的远

练习8 使用proxy——handler 创建代理

# from urllib.error import URLError
# from urllib.request import ProxyHandler,build_opener

# proxy_handler = ProxyHandler({
#   'http': 'http://127.0.0.1:9743',
#     'https': 'https://127.0.0.1:9743'
#   }) 

# opener = build_opener(proxy_handler)

# try:
#   response = opener.open('https://www.baidu.com')
#   print(response.read().decode('utf-8'))
#   pass
# except URLError as e:
#   print(e.reason)
#   pass

下面一个练习是关于获取网页coockies的,一直对于cookie的概念很模糊,特意维基了一下:

Cookie(复数形态Cookies),中文名称为“小型文本文件”或“小甜饼”[1],指某些网站为了辨别用户身份而储存在用户本地终端(Client Side)上的数据(通常经过加密)。
Cookie总是保存在客户端中,按在客户端中的存储位置,可分为内存Cookie和硬盘Cookie。

更详细的解释见https://zh.wikipedia.org/wiki/Cookie

练习9 使用http.cookiejar获得网页的cookie

# import http.cookiejar,urllib.request

# cookies = http.cookiejar.CookieJar()
# handler = urllib.request.HTTPCookieProcessor(cookies)
# opener = urllib.request.build_opener(handler)

# response = opener.open('http://www.baidu.com')
# for item in cookies:
#   print(item.name+'='+item.value)

练习10 把cookie导出到文件,注意生成coockie时候要使用MozillaCookieJar或LWPCookieJar

导出来的文件根本看不懂。

# import http.cookiejar,urllib.request

# filename = 'cookie1.txt'
# cookies = http.cookiejar.LWPCookieJar(filename)
# handler = urllib.request.HTTPCookieProcessor(cookies)
# opener = urllib.request.build_opener(handler)
# response = opener.open('http://www.baidu.com')
# cookies.save(ignore_discard = True,ignore_expires = True)

练习11 读取之前导出到文件的cookie
浏览器保存用户的用户名及密码以便下次登陆就用到了这个功能

# import http.cookiejar,urllib.request

# cookie = http.cookiejar.LWPCookieJar()
# cookie.load(filename='cookie1.txt',ignore_discard=True,ignore_expires=True)
# handler = urllib.request.HTTPCookieProcessor(cookie)
# opener = urllib.request.build_opener(handler)
# response = opener.open('http://www.baidu.com')
# print(response.read().decode('utf-8'))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值