python+selenium自动化实战携带cookies模拟登陆微博
首先获取cookies,使用手机扫码登录斗鱼,然后利用网页cookies保存在本地
有些同学可能会问,这不是相当于自己登录了吗,还模拟什么呢,其实来说这是一次获取cookies可以使用很久
#!/usr/bin/envpython
#-*-coding:utf-8-*-
#@Time:2020/12/2916:27
#@Author:huni
#@File:微博cookies.py
#@Software:PyCharm
fromseleniumimportwebdriver
fromtimeimportsleep
importjson
if__name__=='__main__':
driver=webdriver.Chrome(executable_path='./chromedriver.exe')
driver.maximize_window()
driver.get('https://weibo.com/login.php')
sleep(6)
#driver.switch_to.frame(driver.find_element_by_xpath('//*[@id="anony-reg-new"]/div/div[1]/iframe'))#切换浏览器标签定位的作用域
driver.find_element_by_xpath('//*[@id="pl_login_form"]/div/div[1]/div/a[2]').click()
sleep(10)
dictCookies=driver.get_cookies()#获取list的cookies
jsonCookies=json.dumps(dictCookies)#转换成字符串保存
withopen('微博_cookies.txt','w')asf:
f.write(jsonCookies)
print('cookies保存成功!')
然后利用cookies登录到微博,实现模拟登陆
#!/usr/bin/envpython
#-*-coding:utf-8-*-
#@Time:2020/12/2916:30
#@Author:huni
#@File:携带cookies模拟登陆微博.py
#@Software:PyCharm
fromseleniumimportwebdriver
fromselenium.webdriver.chrome.optionsimportOptions
fromtimeimportsleep
importjson
defbrowser_initial():
#chrome_options=Options()
#chrome_options.add_argument('--headless')
#browser=webdriver.Chrome(options=chrome_options)
browser=webdriver.Chrome(executable_path='./chromedriver.exe')
browser.maximize_window()
browser.get(
'https://weibo.com/login.php')
returnbrowser
deflog_csdn(browser):
withopen('微博_cookies.txt','r',encoding='utf8')asf:
listCookies=json.loads(f.read())
#往browser里添加cookies
forcookieinlistCookies:
cookie_dict={
'domain':'.weibo.com',
'name':cookie.get('name'),
'value':cookie.get('value'),
"expires":'',
'path':'/',
'httpOnly':False,
'HostOnly':False,
'Secure':False
}
browser.add_cookie(cookie_dict)
sleep(3)
browser.refresh()#刷新网页,cookies才成功
if__name__=="__main__":
browser=browser_initial()
log_csdn(browser)
到此这篇关于python+selenium自动化实战携带cookies模拟登陆微博的文章就介绍到这了,更多相关selenium自动化cookies模拟登陆内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票!