selenium驱动对象/元素获取/发送信息
import selenium
import urllib
import selenium.webdriver
import selenium.webdriver.common.keys
import time
"""
步骤:
1.开启webdriver对象
2.get获取网页信息
3.通过元素定位想要的位置信息
4.send_keys输入想要输入的信息
5.按键进行操作
"""
driver = selenium.webdriver.Chrome(r"C:\Users\xxx\Desktop\chromedriver.exe")
driver.get("http://www.baidu.com")
elem = driver.find_element_by_id("kw")
elem.send_keys("python")
time.sleep(3)
elem.send_keys(selenium.webdriver.common.keys.Keys.RETURN)
time.sleep(20)
driver.close()
模拟登录xxxx网站
import selenium
import selenium.webdriver
import selenium.webdriver.common.keys
import time
driver = selenium.webdriver.Chrome(r"C:\Users\xxx\Desktop\chromedriver.exe")
driver.get("https://account.xxxxx.com/signin?returnUrl=https%3A%2F%2Fwww.xxx.com%2F")
elem = driver.find_element_by_id("LoginName")
elem.send_keys("*******")
elem2 = driver.find_element_by_id("Password")
elem2.send_keys("******")
time.sleep(3)
elem2.send_keys(selenium.webdriver.common.keys.Keys.RETURN)
time.sleep(10)
pagesource = driver.page_source
print(pagesource)
time.sleep(20)
driver.close()
page_source和find_element_by_xapth
相较于by_class_name的不确定性,使用by_xpath更能很好的定位元素的位置,by_xpath是最后的杀手锏
import selenium
import selenium.webdriver
import selenium.webdriver.common.keys
import time
driver = selenium.webdriver.Chrome(r"C:\Users\xxxx\Desktop\chromedriver.exe")
driver.get("https://talent.baidu.com/external/baidu/index.html#/social/2/python")
time.sleep(5)
for i in range(10):
# elem = driver.find_element_by_class_name("next")
"""
相较于by_class_name的不确定性,使用by_xpath更能很好的定位元素的位置,by_xpath是最后的杀手锏
"""
elem = driver.find_element_by_xpath("//*[@class="pagination"]/ul//li[last()]/a")
print(elem)
time.sleep(3)
elem.click()
pagesource = driver.page_source
print(pagesource)
print("--"*40)
time.sleep(40)
driver.close()