注:爬取日期2023年6月26日
一、收获点
1. 等待需要的元素加载完毕:
- Wait(driver, 60).until(EC.presence_of_element_located((By.XPATH,'//*[@id="allCity"]/div[1]/span')))
- time.sleep(10)
2. selenium webdriver只会与可见元素交互,元素隐藏时返回的都是空字符串解决方法:
- 由content.text改为content.get_attribute("innerText")
二、百度地图
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time
driver = webdriver.Chrome()
driver.get("https://jiaotong.baidu.com/congestion/city/urbanrealtime?cityCode=132")
results = []
# 选择城市
content2 = driver.find_element(By.XPATH,'//*[@id="allCity"]/div[1]/span')
content2.click()
# 根据百度代码格式 两个for循环爬取100个城市
for i in ra