激活Python spider程序中的按钮

2024-06-17 21:09:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我完全被这件事困住了。我从一个网页抓取餐厅网址,底部有一个按钮显示更多的餐厅。网站按钮代码如下(我相信):

<div id="restsPages">
<a class="next" data-url="https://hungryhouse.co.uk/takeaways/aberdeen-bridge-of-dee-ab10">Show more</a>
<a class="back">Back to top</a>
</div>

这是“显示更多”按钮,我试图激活。“数据url”中的url不会显示页面的更多内容。你知道吗

在python spider中如何激活按钮似乎有点奇怪?你知道吗

我尝试使用的代码是:

import scrapy

from hungryhouse.items import HungryhouseItem
from selenium import webdriver  

class HungryhouseSpider(scrapy.Spider):
    name = "hungryhouse"
    allowed_domains = ["hungryhouse.co.uk"]
    start_urls = ["https://hungryhouse.co.uk/takeaways/westhill-ab10",
                      ]
    def __init__(self):
        self.driver = webdriver.Chrome()

    def parse(self,response):
        self.driver.get(response.url)

        while True:
            next =self.driver.find_element_by_xpath('//*[@id="restsPages"]/a[@class="next"]')
            try:
                next.click()
            except:
                break
        self.driver.close()

.... rest of the code follows

我得到的错误是:“chromedriver”可执行文件需要在路径中


Tags: 代码importselfdividurldriver按钮