绕过验证码登陆的⽅法(适合只需登陆⼀次可以记住登陆台的⽹
站)
selenium获取cookies
1.⼤前提:先⼿⼯操作浏览器,登录我的博客,并记住密码
(保证关掉浏览器后,下次打开浏览器访问我的博客时候是登录状态)
2.selenium默认启动浏览器是⼀个空的配置,默认不加载配置缓存⽂件,这⾥先得到对应浏览器的配置⽂件地址,以⽕狐浏览器为例
3.使⽤_cookies()⽅法获取浏览器的cookies
# coding:utf-8
import requests
from selenium import webdriver
from bs4 import BeautifulSoup
import re
import time
# firefox浏览器配置⽂件地址
profile_directory = r'C:\Users\admin\AppData\Roaming\Mozilla\Firefox\Profiles\yn80ouvt.default'
# 加载配置
profile = webdriver.FirefoxProfile(profile_directory)
# 启动浏览器配置
driver = webdriver.Firefox(profile)
<("homeblogs/u/yoyoketang/followers/")
time.sleep(3)
cookies = _cookies() # 获取浏览器cookies
print(cookies)
driver.quit()
(注:要是这⾥脚本启动浏览器后,打开的博客页⾯是未登录的,后⾯内容都不⽤看了,先检查配置⽂件是不是写错了)requests添加登录的cookies
1.浏览器的cookies获取到后,接下来⽤requests去建⼀个session,在session⾥添加登录成功后的cookies
s = requests.session() # 新建session
# 添加cookies到CookieJar
c = kies.RequestsCookieJar()
for i in cookies:
c.set(i["name"], i['value'])
selenium获取cookie计算粉丝数和分页总数
1.由于我的粉丝的数据是分页展⽰的,这⾥⼀次只能请求到45个,所以先获取粉丝总数,然后计算出总的页数
# 发请求
r1 = s.get("homeblogs/u/yoyoketang/relation/followers")
参考:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论