标签:__ url self cookie error print import utllib
utllib-cookie
from os.path import exists
from os import makedirs
from fake_useragent import UserAgent
from urllib import request
from urllib import parse
from http import cookiejar
from hashlib import md5
class UrllibCookie():
def __init__(self, saveCookieDirPath, url):
self.saveCookieDirPath = saveCookieDirPath
self.url = url
self.save()
def getCookieFilePath(self):
SplitResult = parse.urlsplit(self.url)
SplitString = ''.join([SplitResult.scheme, '://', SplitResult.hostname])
return self.saveCookieDirPath + '/' + md5(bytes(SplitString, encoding='utf-8')).hexdigest() + '.cookie'
def save(self):
cookie = cookiejar.MozillaCookieJar()
handle = request.HTTPCookieProcessor(cookie)
opener = request.build_opener(handle)
opener.open(self.url)
cookie.save(self.getCookieFilePath())
def get(self):
cookie = cookiejar.MozillaCookieJar()
cookie.load(self.getCookieFilePath())
return cookie
if __name__ == '__main__':
cookieDirPath = '.cookie'
if not exists(cookieDirPath):
makedirs(cookieDirPath)
o = UrllibCookie(cookieDirPath, 'https://tieba.baidu.com/index.html?traceid=')
g = o.get()
print(g) # <Cookie BAIDUID=558E8D5FE58F96E5A78E9A63E1AE731B:FG=1 for .baidu.com/>
utllib-error
# CY3761 | 2021-11-27 10:30
from urllib import request
from urllib import error
urlItems = [
'https://www.google.com', # 国内无法直接访问
'https://www.google.cn', # 国内能访问
'https://movie.douban.com', # 需要头信息才能正确访问
]
for url in urlItems:
print(url)
try:
res = request.urlopen(url)
except error.HTTPError as e: # 说明服务器是有能力响应, 只是某种原因拒绝了你的请求
print(e)
except error.URLError as e: # 地址无法访问可能会触发
print(e)
else:
print(res.code, len(res.read()))
utllib一般好用,很多处理需要封装
标签:__,url,self,cookie,error,print,import,utllib 来源: https://blog.csdn.net/weixin_63272654/article/details/121573908
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。