爬取淘宝“https://www.taobao.com/list/item/608326880625.htm?spm=a21wu.10013406.taglist-content.1.31686316M2sZsQ”页面的评论的源代码
时间: 2023-12-01 22:03:23 浏览: 131
汽车产品数据https://tianchi.aliyun.com/?spm=5176.12281973.J_3941670930
由于淘宝评论需要登录才能获取,这里提供一个基于Selenium自动化测试工具的爬取示例代码,需要先安装Selenium和Chrome浏览器驱动。
```python
from selenium import webdriver
import time
# 打开浏览器
browser = webdriver.Chrome()
# 访问商品页面
url = "https://www.taobao.com/list/item/608326880625.htm?spm=a21wu.10013406.taglist-content.1.31686316M2sZsQ"
browser.get(url)
# 等待页面加载完成
time.sleep(2)
# 点击“查看全部”按钮
view_all_button = browser.find_element_by_class_name("rate-list-more")
view_all_button.click()
# 循环获取所有评论
while True:
# 获取所有评论元素
comment_elements = browser.find_elements_by_css_selector(".rate-grid > tbody > tr")
# 输出所有评论的文本内容
for comment_element in comment_elements:
comment_text = comment_element.find_element_by_class_name("tm-rate-fulltxt").text
print(comment_text)
print("=" * 50)
# 如果有下一页,则点击下一页
next_page_button = browser.find_element_by_css_selector(".rate-paginator > ul > li:last-child")
if "rate-disabled" in next_page_button.get_attribute("class"):
break
next_page_button.click()
time.sleep(2)
# 关闭浏览器
browser.quit()
```
该代码可以获取该商品页面的所有评论文本内容。需要注意的是,淘宝评论是动态加载的,需要点击“查看全部”按钮才能显示所有评论。在代码中,使用了一个死循环来循环获取所有评论,直到没有下一页为止。每次循环都会获取当前页面的所有评论元素,输出其文本内容,并点击下一页按钮。需要适当增加等待时间,确保页面加载完成。
阅读全文