使用selenium获取京东任意商品评论代码,获取3页的评论内容和用户名,输出到屏幕上,并写到文本文档中。
时间: 2024-03-23 13:36:04 浏览: 13
好的,以下是使用Python和Selenium获取京东商品评论的代码:
```python
from selenium import webdriver
import time
# 设置Chrome浏览器驱动的路径,启动浏览器
driver_path = "chromedriver.exe"
driver = webdriver.Chrome(driver_path)
# 打开京东商品详情页
driver.get("https://item.jd.com/100018775035.html")
# 点击商品评论按钮,进入评论页
driver.find_element_by_link_text("商品评价").click()
# 获取评论内容和用户名,输出到屏幕上
for i in range(3):
time.sleep(2)
comments = driver.find_elements_by_css_selector(".comment-con")
usernames = driver.find_elements_by_css_selector(".user-ellipsis")
for j in range(len(comments)):
print("用户名:", usernames[j].text)
print("评论内容:", comments[j].text)
print("------------------")
# 点击翻页按钮,获取下一页评论
driver.find_element_by_css_selector(".ui-pager-next").click()
# 将评论内容和用户名写入文本文档中
with open("comments.txt", "w", encoding="utf-8") as f:
for i in range(3):
time.sleep(2)
comments = driver.find_elements_by_css_selector(".comment-con")
usernames = driver.find_elements_by_css_selector(".user-ellipsis")
for j in range(len(comments)):
f.write("用户名:" + usernames[j].text + "\n")
f.write("评论内容:" + comments[j].text + "\n")
f.write("------------------\n")
# 点击翻页按钮,获取下一页评论
driver.find_element_by_css_selector(".ui-pager-next").click()
# 关闭浏览器
driver.quit()
```
上述代码中,我们首先启动了Chrome浏览器,然后打开了京东商品详情页,并点击了商品评论按钮,进入了评论页。接着,我们使用了一个循环,每次循环获取当前页面的评论内容和用户名,并将其输出到屏幕上。我们还在循环中点击了翻页按钮,获取下一页评论。循环的次数可以根据需要自行修改。
最后,我们将评论内容和用户名写入了一个名为“comments.txt”的文本文档中。这里使用了Python内置的“with”语句,可以自动关闭文件,防止因程序异常退出而导致文件未关闭的情况。