PythonScrapy如何单击html按钮?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (778)

我想点击一个html按钮在一个网站,打开一个登录表单。我的问题是,我只是想点击一个按钮,并将控制转移到新的页面。我读过所有类似的问题,但没有一个问题令人满意,因为它们都包含直接登录或使用Selenium。

下面是按钮的HTML代码,我想访问http://example.com/login那里有登录页面。

<div class="pull-left">
    <a href="http://example.com/login" class="emplink">Employers</a>    

我已经编写了提取链接的代码。但是如何访问这个链接并进行下一个过程。下面是我的代码:

import scrapy

class QuotesSpider(scrapy.Spider):
    name = 'pro'
    url =  "http://login-page.com/"


def start_requests(self):
    yield scrapy.Request(self.url, self.parse_login)


def parse_login(self, response):
    employers = response.css("div.pull-left a::attr(href)").extract_first()
    print employers
提问于
用户回答回答于

你需要的是生成一个新请求或更容易地发出response.follow就像在文档中:

def parse_login(self, response):
    next_page = response.css("div.pull-left a::attr(href)").extract_first()
    if next_page is not None:
        yield response.follow(next_page, callback=self.next_page_parse)

扫码关注云+社区

领取腾讯云代金券