requests
获取网页
response = requests.post(url, headers)
返回的response包含有网页返回的内容。
response.text以文字方式访问。
beautiful soup
soup.find_all()
selenium
- xpath查找
查找class为"wos-style-checkbox",type为"checkbox"的任意elements。可以把*号换成input,就变成查找满足上述条件的input elemetns。
1 | driver.find_elements_by_xpath("//*[@type='checkbox'][@class='wos-style-checkbox']") |
- 访问元素的内容
element.text - 复选框选中与取消选中
1 | checkbox = driver.find_element_by_id("checkbox") |
- 提交表单
1 | keywords = driver.find_element_by_id("input") |
- 输完表单内容需要回车
直接在表单内容中添加\n即可。 - 下拉框
使用Select对象
1 | from selenium.webdriver.support.ui import Select |
- 模拟鼠标操作
1 | from selenium.webdriver.common.action_chains import ActionChains |
- display:none和visible: hidden
display:none表示完全不可见,不占据页面空间,而visible: hidden仅仅隐藏了element的显示效果,仍然占据页面空间,并且是可以被定位到,但是无法被访问(如selenium的click,clear以及send_keys等,会报错ElementNotVisibleException’: Message: Element is not currently visible and so may not be interacted with)。
参考文献
1.https://www.w3schools.com/xml/xml_xpath.asp
2.https://devhints.io/xpath
3.https://zhuanlan.zhihu.com/p/31604356