相信各位在写 python 爬虫的时候会在爬取网站时遇到一些登陆的问题,比如说登陆时遇到输入验证码比如说登录时遇到图片拖拽等验证,如何解决这类问题呢?一般有两种方案。
使用 cookie 登陆
我们可以通过使用 cookies 登陆,首先获取浏览器的 cookie,然后利用 requests 库直接登陆 cookie,服务器就会认为你是一个真实登陆用户,所以就会返回给你一个已登陆的状态,这个方法是很好用的,基本上绝大部分的需要验证码登录的网站都可以通过 cookie 登录来解决,
#! -*- encoding:utf-8 -*- import requests import random import requests.adapters # 要访问的目标页面 targetUrlList = [ "https://httpbin.org/ip", "https://httpbin.org/headers", "https://httpbin.org/user-agent", ] # 代理服务器 proxyHost = "t.16yun.cn" proxyPort = "31111" # 代理隧道验证信息 proxyUser = "username" proxyPass = "password" proxyMeta = "http://%(user)s:%(pass)s@%(host)s:%(port)s" % { "host": proxyHost, "port": proxyPort, "user": proxyUser, "pass": proxyPass, } # 设置 http和https访问都是用HTTP代理 proxies = { "http": proxyMeta, "https": proxyMeta, } # 访问三次网站,使用相同的Session(keep-alive),均能够保持相同的外网IP s = requests.session() # 设置cookie cookie_dict = {"JSESSION":"123456789"} cookies = requests.utils.cookiejar_from_dict(cookie_dict, cookiejar=None, overwrite=True) s.cookies = cookies for i in range(3): for url in targetUrlList: r = s.get(url, proxies=proxies) print r.text 若存在验证码,此时采用resp**e = requests_session.post(url=url_login, data=data)是不行的,做法应该如下: resp**e_captcha = requests_session.get(url=url_login, cookies=cookies) resp**e1 = requests.get(url_login) # 未登陆 resp**e2 = requests_session.get(url_login) # 已登陆,因为之前拿到了Resp**e Cookie! resp**e3 = requests_session.get(url_results) # 已登陆,因为之前拿到了Resp**e Cookie!
模拟登陆
这里不得不说一句老话,前人种树,后人乘凉,当时我想爬一下知乎盐选的文章,但是卡在了登陆这块,没想到搜索下来发现了一个模拟登陆的库,非常好用,不过本着好东西不分享防和谐的原则,就不在这里说了。
具体思路也就是通过 requests 来进行模拟登陆,然后返回一下验证码,之后传入验证码即可登陆成功了。
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
更新日志
2024年09月23日
2024年09月23日
- 群星《十二女声Ⅲ》[WAV/CUE/分轨][626.4MB]
- 陈百强.1993-离不开...纪念歌集2CD【华纳】【WAV+CUE】
- 于台烟.2003-爱自己【乾坤唱片】【WAV+CUE】
- 群星.2024-我们永远是我们电影原声带【乐禾发文化】【FLAC分轨】
- 【中国民乐】张维良《秋江夜泊》2004[FLAC+CUE]
- 明达年度发烧碟MasterSuperiorAudiophile2011[DSF]
- 明达年度发烧碟MasterSuperiorAudiophile2017[DSF]
- 翁立友.2008-恨孤单【大旗】【WAV+CUE】
- 群星.2009-Magic.Cover日粤精华3CD【环球】【WAV+CUE】
- 华少翌.2005-华少翌【中唱艺能】【WAV+CUE】
- 群星《十二女声Ⅱ》[WAV/CUE/分轨][527MB]
- 大自然音乐系列《漫步在山裡》[WAV/CUE/分轨][502.8MB]
- 大自然音乐系列《星光夜语》[WAV/CUE/分轨][453.3MB]
- 史依弘《史依弘交响乐京剧演唱专辑HQ》头版限量编号[WAV+CUE]
- 曼丽2020《女人三十风继续吹》HQCD[WAV+CUE]