主页 > 手机  > 

selenium爬取苏宁易购平台某产品的评论

selenium爬取苏宁易购平台某产品的评论

目录

selenium的介绍

1、 selenium是什么? 

2、selenium的工作原理

3、如何使用selenium?

webdriver浏览器驱动设置

关键步骤

代码

运行结果

注意事项


selenium的介绍 1、 selenium是什么? 

    用于Web应用程序测试的工具。可以驱动浏览器执行特定操作,自动按照脚本     代码做出点击,输入,打开,验证等操作,就像真实用户所做的一样。     支持的浏览器包括IE,Firefox,Safari,Chrome,Opera等。

2、selenium的工作原理

    浏览器具有webdriver驱动,这个驱动是根据不同的浏览器开发的,     不同的浏览器使用不同的webdriver驱动程序且需要对应相应的浏览器版本,     webdriver驱动程序可以通过浏览器内核控制浏览执行指定命令

3、如何使用selenium?

使用前准备: a、安装selenium库  b、驱动浏览器的内核驱动 a、安装selenium,使用pip install selenium -i pypi.mirrors.ustc.edu /simple/                 或在pycharm中安装 b、chrome内核驱动地址    360浏览器使用的就是chrome的内核,QQ浏览器使用IE,IE, chromedriver.storage.googleapis /index.html  

首先确定你的浏览器是使用哪个内核??     windows系统:下载下来的文件解压后放置在python安装地址的Scripts中     Linux和Mac系统:同上,注意:系统存在2个Python版本,确定当前运行的python                     版本配置在环境变量中

爬取苏宁易购平台某款产品的优质评论与差评

webdriver浏览器驱动设置

webdriver具备多种不同浏览器的驱动, browser = webdriver.Chrome() browser = webdriver.Firefox() browser = webdriver.Edge() browser = webdriver.PhantomJS() browser= webdriver.Safari() 其中.chrome.webdriver import WebDriver as Chrome定义了别名,Chrome代表WebDriver

关键步骤

初始化浏览器驱动:

使用 selenium 的 Options 对象配置 Edge 浏览器,例如可以设置无界面模式。初始化 webdriver.Edge,启动浏览器。

抓取优质评价:

打开优质评价的 URL。使用 find_elements 查找所有评价内容,并将其保存到文件 优质评价1.txt。点击“下一页”按钮,循环抓取所有页的评论内容。

抓取差评:

打开差评的 URL。使用 find_elements 查找所有差评内容,并将其保存到文件 差评.txt。点击“下一页”按钮,循环抓取所有页的差评内容。

关闭浏览器:

完成抓取后,调用 driver.quit() 关闭浏览器。 代码 from selenium import webdriver from selenium.webdriver.edge.options import Options from selenium.webdriver mon.by import By import time # 创建 Edge 浏览器选项对象 options = Options() # 在这里可以添加各种选项,例如: # options.add_argument('--headless') # 无界面模式 # 使用修改后的参数传递方式初始化 Edge 浏览器驱动 driver = webdriver.Edge(options=options) # 抓取优质评价 driver.get(' review.suning /cluster_cmmdty_review/cluster-38249278-000000012389328846-0000000000-1-good.htm?originalCmmdtyType=general&safp=d488778a.10004.loverRight.166') # 打开文件,用于保存优质评价内容 yzpj_file = open('优质评价1.txt', 'w', encoding='utf-8') def get_py_content(file): # 查找所有包含评价内容的元素 pj_elements_content = driver.find_elements(By.CLASS_NAME, 'body-content') # 遍历每个元素,将文本内容写入文件 for i in range(len(pj_elements_content)): file.write(pj_elements_content[i].text + '\n') # 获取第一页的评论内容 get_py_content(yzpj_file) # 查找下一页按钮 next_elements = driver.find_elements(By.XPATH, '//*[@class="next rv-maidian "]') print(next_elements) # 循环点击下一页,获取所有页的评论内容 while next_elements: next_element = next_elements[0] time.sleep(1) # 等待页面加载 next_element.click() # 点击下一页 get_py_content(yzpj_file) # 获取当前页的评论内容 next_elements = driver.find_elements(By.XPATH, '//*[@class="next rv-maidian "]') # 重新查找下一页按钮 # 关闭优质评价文件 yzpj_file.close() # 抓取差评 driver.get(' review.suning /cluster_cmmdty_review/cluster-38249278-000000012389328846-0000000000-1-bad.htm?originalCmmdtyType=general&safp=d488778a.10004.loverRight.166') # 打开文件,用于保存差评内容 cpj_file = open('差评.txt', 'w', encoding='utf-8') def get_cp_content(file): # 查找所有包含差评内容的元素 pj_elements_content = driver.find_elements(By.CLASS_NAME, 'body-content') # 遍历每个元素,将文本内容写入文件 for i in range(len(pj_elements_content)): file.write(pj_elements_content[i].text + '\n') # 获取第一页的差评内容 get_cp_content(cpj_file) # 查找下一页按钮 next_elements = driver.find_elements(By.XPATH, '//*[@class="next rv-maidian "]') print(next_elements) # 循环点击下一页,获取所有页的差评内容 while next_elements: next_element = next_elements[0] time.sleep(2) # 等待页面加载 next_element.click() # 点击下一页 get_cp_content(cpj_file) # 获取当前页的差评内容 next_elements = driver.find_elements(By.XPATH, '//*[@class="next rv-maidian "]') # 重新查找下一页按钮 # 关闭差评文件 cpj_file.close() # 关闭浏览器 driver.quit()

运行结果

1)优质评价

2)差评

注意事项

浏览器驱动:

确保已安装正确版本的 Microsoft Edge 驱动程序,并将其路径添加到系统环境变量中。

网页动态加载:

使用 time.sleep() 等待页面加载,避免因页面未完全加载而导致错误。

文件编码:

打开文件时指定 encoding='utf-8',避免写入内容时出现乱码。

XPath 定位:

确保 XPath 表达式正确,能够定位到“下一页”按钮。如果网页结构发生变化,需要调整 XPath。

无界面模式:

如果需要无界面运行,可以取消注释 options.add_argument('--headless')。

标签:

selenium爬取苏宁易购平台某产品的评论由讯客互联手机栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“selenium爬取苏宁易购平台某产品的评论