几个注意点
必须安装浏览器和浏览器驱动,并且浏览器和浏览器驱动要配到
即如果使用谷歌浏览器模拟网页行为,则需要下载谷歌浏览器驱动;
如果使用火狐浏览器模拟网页行为,则需要下载火狐浏览器驱动
浏览器驱动所在的目录要在环境变量中,或者定义浏览器browser的时候指定驱动的路径
selenium更多用法
查找元素
from selenium import webdriver browser = webdriver.Firefox() browser.get("https://tieba.baidu.com/index.html") new_list = browser.find_element_by_id('new_list') user_name = browser.find_element_by_name ('user_name') active = browser.find_element_by_class_name ('active') p = browser.find_element_by_tag_name ('p') # find_element_by_name 通过name查找单个元素 # find_element_by_xpath 通过xpath查找单个元素 # find_element_by_link_text 通过链接查找单个元素 # find_element_by_partial_link_text 通过部分链接查找单个元素 # find_element_by_tag_name 通过标签名称查找单个元素 # find_element_by_class_name 通过类名查找单个元素 # find_element_by_css_selector 通过css选择武器查找单个元素 # find_elements_by_name 通过name查找多个元素 # find_elements_by_xpath 通过xpath查找多个元素 # find_elements_by_link_text 通过链接查找多个元素 # find_elements_by_partial_link_text 通过部分链接查找多个元素 # find_elements_by_tag_name 通过标签名称查找多个元素 # find_elements_by_class_name 通过类名查找多个元素 # find_elements_by_css_selector 通过css选择武器查找多个元素 |
获取元素信息
btn_more = browser.find_element_by_id('btn_more') print(btn_more.get_attribute('class')) # 获取属性 print(btn_more.get_attribute('href')) # 获取属性 print(btn_more.text) # 获取文本值 |
元素交互操作
btn_more = browser.find_element_by_id('btn_more') btn_more.click() # 模拟点击,可以模拟点击加载更多 input_search = browser.find_element(By.ID,'q') input_search.clear() # 清空输入 |
执行JavaScript
# 执行JavaScript脚本 browser.execute_script('window.scrollTo(0, document.body.scrollHeight)') browser.execute_script('alert("To Bottom")') |
上文内容不用于商业目的,如涉及知识产权问题,请权利人联系博为峰小编(021-64471599-8017),我们将立即处理。