淘宝的html是动态加载的,直接用requests请求并不能找到想要的数据,这里用selenium库模拟浏览器登录并操作
导库
from selenium import webdriver
淘宝的url
url ='https://www.taobao.com/'
browser = webdriver.Chrome()
browser.get(url)
用css选择器获取淘宝搜索框并输入“书籍”(也可以输入其他的关键字,网页的结构一样的)
inputs = browser.find_element_by_css_selector('#q')
inputs.send_keys('书籍')
找到搜索键,并点击
submit = browser.find_element_by_css_selector('#J_TSearchForm > div.search-button > button')
submit.click()
模拟翻页,找到‘到【】页’的搜索框,清空页码值,并增加页码的值,最后找到‘确定’键点击,实现翻页
inputs1 = browser.find_element_by_css_selector('#mainsrp-pager > div > div > div > div.form > input')
inputs1.clear()
page_num = 2
inputs1.send_keys(page_num)
submit1 = browser.find_element_by_css_selector('#mainsrp-pager > div > div > div > div.form > span.btn.J_Submit')
submit1.click()
上述代码表示翻到第2页
bookname = browser.find_elements_by_css_selector('.J_ClickStat')
print(bookname)
成功返回html,是list的格式
查看找到的书名