利用selenium 模仿浏览器,登陆豆瓣
重点:
1. 要设置好 chromedriver配置与使用, chromedriver.exe 和 Chrome的浏览器版本要对应, http://chromedriver.storage.googleapis.com/index.html
from selenium import webdriver driver = webdriver.Chrome() driver.get('https://www.douban.com/') driver.implicitly_wait(1) # 切换iframe子框架 driver.switch_to.frame(driver.find_elements_by_tag_name("iframe")[0]) # 最大化窗口 driver.maximize_window() # 点击密码登录的标签 driver.find_element_by_css_selector('li.account-tab-account').click() # 输入账号之前清理默认的字符 driver.find_element_by_id('username').clear() driver.find_element_by_id('username').send_keys('17620039002') driver.find_element_by_id('password').clear() driver.find_element_by_id('password').send_keys('123456@#') # 点击‘登录豆瓣’按钮 # 这里需要注意,当元素的class属性有好几个的时候,此函数的参数填class的第一个就好 # 元素的class属性:btn btn-account driver.find_element_by_class_name('btn').click() driver.implicitly_wait(2) # 停2秒后,抓取快照 driver.save_screenshot('D:\\douban.jpg') # 保存源码 with open('D:\\douban_shouye.html', 'w', encoding='utf-8') as f: f.write(driver.page_source) print('wanle')