这一篇贴一下自己写完的功能,自动登录豆瓣功能,未完成功能,验证码识别方面,暂时不会识别。
from selenium import webdriver
import time
url = 'https://www.douban.com/'
def get_cookies():
# option = webdriver.ChromeOptions()
# option.set_headless()
# driver = webdriver.Chrome(options=option)
driver=webdriver.Chrome()
driver.get(url)
driver.find_element_by_id('form_email').clear()
driver.find_element_by_id('form_email').send_keys('XXXXXXX@126.com')#自己的账号
driver.find_element_by_id('form_password').clear()
driver.find_element_by_id('form_password').send_keys('password')#自己的密码
driver.implicitly_wait(5)
driver.find_element_by_class_name('bn-submit').click()
time.sleep(10) #这里再想办法处理验证码的事情,现在手动输入
cookies_list=driver.get_cookies()
driver.quit()
use_cookies(cookies_list)
def use_cookies(cookies_list):
driver=webdriver.Chrome()
driver.get(url)
driver.delete_all_cookies()
time.sleep(3)
for cookie in cookies_list:
cookie_dict={
"domain":".douban.com",
'name': cookie.get('name'),
'value': cookie.get('value'),
"expires": "",
'path': '/',
'httpOnly': False,
'HostOnly': False,
'Secure': False
}
driver.add_cookie(cookie_dict)
driver.refresh()
if(driver.find_element_by_xpath('//*[@id="db-nav-sns"]/div/div/div[3]/ul/li[2]/a').text=='我的豆瓣'):
print('恭喜你已经使用cookies登录成功。')
if __name__=='__main__':
get_cookies()