selenium常用方法 不断更新

添加chromedriver

如果chromedriver在环境变量里,不用添加chromedriver的路径。

driver = webdriver.Chrome()
driver = webdriver.Chrome(chromedriver_path)

常用函数

back()  # 返回/后退
close()  # 关闭当前标签
current_url  # 当前标签的网址 
find_element_by_xpath('xpath')  # 通过xpath找element
find_elements_by_xpath('xpath')  # 通过xpath找element
find_element_by_tag_name('tag_name')  # 通过tag找element
find_elements_by_tag_name('tag_name')  # 通过tag找element
get_window_size()  # 得到当前页面大小
refresh()  # 刷新F5
save_screenshot()  # 保存当前页面截图
set_window_size(1280, 1960000)  # 设置当前页面大小

element找到第一个返回的元素,没有会报错。elements返回列表,没有返回空列表。

切换页面

handles = driver.window_handles  # 获取当前页面所有句柄 
driver.switch_to_window(handles[index])  # 切换到页面

§ element对象,常用函数

from selenium.webdriver.common.keys import Keys
send_keys(Keys.END)  # end按键 dir(Keys)可以查看所有按键 DOWN END等
tag_name()  # 标签名字
text  # 标签内文本内容
click()  # 点击element

§ 通过改变属性启动webdriver

# option = webdriver.ChromeOptions()
# option.add_argument('disable-infobars')
# driver = webdriver.Chrome(chrome_options=option)

chromeOptions = webdriver.ChromeOptions()
# chrome_options.add_argument('disable-infobars')  # 屏蔽浏览器正受到自动化测试控制
# chromeOptions.add_argument('headless')  # 后台运行,无界面。
# chromeOptions.add_argument('window-size=1200x600')

driver = webdriver.Chrome(chrome_options=chromeOptions)

§ webdriver调用JavaScript

driver.execute_script("js")

如果调用js代码需要返回数据,用return返回

js = "return document.getElementsByClassName('xxxx')"  # 返回console内容要用return返回
driver.execute_script(js)

 

你可能感兴趣的:(python,爬虫)