Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
单击“;R更多”;使用python在moutshuth.com上查看的按钮_Python_Beautifulsoup - Fatal编程技术网

单击“;R更多”;使用python在moutshuth.com上查看的按钮

单击“;R更多”;使用python在moutshuth.com上查看的按钮,python,beautifulsoup,Python,Beautifulsoup,我正试着翻阅这一页。我需要点击评论部分的“阅读更多”按钮,但在python中使用beautiful soup时找不到它。beautiful soup可以解析html,但不能点击链接。Selenium可以点击链接 from time import sleep from selenium import webdriver url = 'http://www.mouthshut.com/mobile-operators/Reliance-Jio-reviews-925812061-page-{}'

我正试着翻阅这一页。我需要点击评论部分的“阅读更多”按钮,但在python中使用beautiful soup时找不到它。

beautiful soup可以解析html,但不能点击链接。Selenium可以点击链接

from time import sleep

from selenium import webdriver

url = 'http://www.mouthshut.com/mobile-operators/Reliance-Jio-reviews-925812061-page-{}'.format
driver = webdriver.Chrome()
driver.get(url(1))
for elem in driver.find_elements_by_link_text('Read More'):
    elem.click()
    sleep(0.5)

with open('page_source.html', 'w') as f:
    f.write(driver.page_source)
driver.close()
保存每个页面的源html后,可以使用BeautifulSoup对其进行解析并提取所需内容



编辑:单击每个链接后添加
sleep(0.5)
,似乎可以消除某些“阅读更多”链接未被单击的错误。

尝试运行G\M建议的代码,但出现错误。但通过以下步骤解决了此问题:

平台:使用Windows 10、Anaconda Jupyter笔记本电脑、Chrome浏览器

  • 步骤1:在Jupyter笔记本中使用以下命令安装selenium:

    !!pip安装selenium

  • 步骤2:由上面的G_M执行代码:它向我显示了以下错误:

    WebDriverException:消息:“chromedriver”可执行文件需要位于路径中。请访问sites.google.com/a/chromium.org/chromedriver/home

  • 从错误消息中提供的链接下载chromedriver:从上述链接下载最新版本的chromedriver。这是一个压缩文件。解压缩文件,您将获得一个.exe文件,并将其上载到运行Jupyter笔记本的同一位置/文件夹

  • 重新启动笔记本。然后再次执行代码。现在很好用


  • 我正在使用此代码通过单击某个产品的评论网页中的“阅读更多”链接来扩展注释。代码运行良好,除了第一条注释,它没有完全展开。我不知道为什么,但代码在其他注释上运行良好

    @priyankamane没问题,很乐意帮忙!希望您能将其标记为已接受的答案。您好,G_M我在尝试上述代码时遇到此错误:WebDriverException:消息:“chromedriver”可执行文件需要位于路径中。请看。你能建议如何解决这个问题吗?