Python 使用Scrapy填充用于登录的文本区域

Python 使用Scrapy填充用于登录的文本区域,python,selenium,scrapy,Python,Selenium,Scrapy,我正试图从转会市场()中获取球员信息,我成功地获得了我想要的数据 但当我试图从需要登录的网站上刮取“我的玩家观察列表”(My Player Watchlist)时,我不知道如何使用Scrapy填充文本字段。 我尝试使用Scrapy.FormRequests,但发现该网站没有使用POST方法登录。另外,我尝试在使用Scrapy之前使用selenium完成登录,但它似乎不起作用 我知道如何在Selenium中实现这一点,但我想使用Scrapy来提高数据的抓取和更新速度 下面是我不需要登录的玩家列表代

我正试图从转会市场()中获取球员信息,我成功地获得了我想要的数据

但当我试图从需要登录的网站上刮取“我的玩家观察列表”(My Player Watchlist)时,我不知道如何使用Scrapy填充文本字段。 我尝试使用Scrapy.FormRequests,但发现该网站没有使用POST方法登录。另外,我尝试在使用Scrapy之前使用selenium完成登录,但它似乎不起作用

我知道如何在Selenium中实现这一点,但我想使用Scrapy来提高数据的抓取和更新速度

下面是我不需要登录的玩家列表代码

import time
import scrapy
from scrapy.http import FormRequest

class TMSpider(scrapy.Spider):
    name = 'scrapyfirst'
    allowed_domain = ["transfermarkt.com"]

    def start_requests(self):
        urls = [f"https://www.transfermarkt.com/spieler-statistik/wertvollstespieler/marktwertetop?page={i}" for i in range(1,11)]
        for url in urls:
            yield scrapy.Request(url,callback=self.parse)
    def parse(self,response):
        item = ProjItem()
        item['name'] = response.xpath('//td/a[not(contains(text(),"\r\n"))]/text()').getall()
        item['value'] = response.xpath('//td/a[not(contains(text(),"\r\n"))]/text()').getall()
        yield item```

我看了一下这个网站,似乎它确实使用了一个POST请求来登录(你可以看到登录时是否在Chrome中打开网络选项卡)。谢谢!再次检查后,我在xhr文件中找到了用于碎片表单请求的表单数据