import scrapy
class TestSpider(scrapy.Spider):
name = 'test'
#allowed_domains = ['test.com']
start_urls = ['http://httpbin.org/anything']
def parse(self, response):
print(response.text)
Это тестовый паук, я пытаюсь отредактировать запрос в промежуточном программном обеспечении загрузчика.
class ScrapertestDownloaderMiddleware(object):
# Not all methods need to be defined. If a method is not defined,
# scrapy acts as if the downloader middleware does not modify the
# passed objects.
@classmethod
def from_crawler(cls, crawler):
# This method is used by Scrapy to create your spiders.
s = cls()
crawler.signals.connect(s.spider_opened, signal=signals.spider_opened)
return s
def process_request(self, request, spider):
# Called for each request that goes through the downloader
# middleware.
#request.url = "https://www.example.com"
#request = request.replace(headers={'User-Agent':'dsadasdsa'})
request.replace(headers={'User-Agent':'dsadasdsa'})
#request.replace(url="https://www.example.com")
return request
Я пробовал много способов запустить его, но он не работал. если я возвращаю request
паук застревает (CTRL+C
не работает), если я возвращаю None
, ни одно из изменений не вступает в силу.