selenium爬取驾考宝典题目

要求

  • [x] Python3+

  • [x] Chrome驱动并已配置环境变量

  • [x] Selenium

## 研究页面
发现驾考宝典的科目四页面URL都是以 https://www.jiakaobaodian.com/mnks/exercise/0-car-kemu4-huaibei.html?id=916800,每翻一页最后的id值更新一次

所以,主函数可以写为
python # 1到15题 if __name__ == '__main__': for i in range(0, 15): getJkbd((i * 100 + 909800))

getJkbd()是我自己定义的函数,对页面进行具体的操作

## 编写getJkbd函数

动态拼接url
python url = 'https://www.jiakaobaodian.com/mnks/exercise/0-car-kemu4-huaibei.html?id=' + str(num)

打开浏览器发出请求

browser = webdriver.Chrome()
browser.get(url)

添加等待函数,直至题目被加载出来,这是动态页面

wait = WebDriverWait(browser, 10)
wait.until(EC.presence_of_element_located((By.ID, 'ComQuestionDetail_qundefined')))

提取解析页面并打印到控制台

timu = browser.find_element_by_class_name('timu-text')
xpath = '/html/body/div[@class=\'container mnks-exercise\']/div[@class=\'layout-article\']/div[@class=\'container news-page\']/div[@class=\'frame-l-r\']/div[@class=\'left\']/div[@class=\'com-mnks-question-detail\']/div[@id=\'ComQuestionDetail_qundefined\']/div[@class=\'answer-w clearfix\']/div[@class=\'options-w left\']'
daan = browser.find_element_by_xpath(xpath)
print(timu.text)

print(daan.text)
browser.delete_all_cookies()
browser.close()

猜你喜欢

转载自www.cnblogs.com/zhangqiuchi/p/12158752.html