selenium翻页京东
时间: 2024-01-02 19:22:42 浏览: 143
基于Python selenium实现京东模拟登陆
以下是使用selenium模拟翻页爬取京东图书名称和价格的示例代码:
```python
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from selenium.webdriver.common.keys import Keys
# 创建浏览器实例
driver = webdriver.Chrome()
# 打开京东图书页面
driver.get("https://book.jd.com/")
# 定位搜索框并输入关键词
search_box = driver.find_element_by_id("key")
search_box.send_keys("python")
search_box.send_keys(Keys.ENTER)
# 模拟鼠标滚动到页面底部
actions = ActionChains(driver)
actions.move_to_element(driver.find_element_by_tag_name("body"))
actions.perform()
# 获取第一页的图书名称和价格
book_names = driver.find_elements_by_css_selector(".p-name a")
book_prices = driver.find_elements_by_css_selector(".p-price i")
for name, price in zip(book_names, book_prices):
print("书名:", name.text)
print("价格:", price.text)
print("--")
# 模拟点击下一页按钮
next_page = driver.find_element_by_css_selector(".pn-next")
next_page.click()
# 获取第二页的图书名称和价格
book_names = driver.find_elements_by_css_selector(".p-name a")
book_prices = driver.find_elements_by_css_selector(".p-price i")
for name, price in zip(book_names, book_prices):
print("书名:", name.text)
print("价格:", price.text)
print("--")
# 关闭浏览器
driver.quit()
```
注意事项:
1. 需要安装selenium库和对应的浏览器驱动(如ChromeDriver)。
2. 在代码中使用了Chrome浏览器和ChromeDriver作为示例,你可以根据自己的需求选择其他浏览器和对应的驱动。
3. 代码中的关键元素定位使用了CSS选择器,你也可以使用其他定位方式。
4. 在实际使用中,可能需要添加等待时间或其他操作来确保页面加载完成或处理弹窗等情况。
阅读全文