[英]Python / Scrapy: yield request without callback
我正在嘗試輸入getMonthEvents。 但是以某種方式似乎從未執行過回調。 有任何想法嗎? 謝謝 :)
from scrapy.selector import Selector
from scrapy.spiders import CrawlSpider, Rule
from scrapy.linkextractors import LinkExtractor
from scrapy.http import Request
from scrapy.item import Item, Field
class EventItems(Item):
Title = Field()
Link = Field()
Date = Field()
Time = Field()
Place = Field()
Description = Field()
Program=Field()
class SpiderForHSMT(CrawlSpider):
name = 'HMTM'
start_urls = ['http://www.some_website.com']
rules =(Rule( LinkExtractor(restrict_xpaths=('//div[@id="VER_2013_DISPLAYSEARCHRESULTS"]/table[1]/tr[3]'), tags=('a',), attrs=('href',)), callback = 'parseMonth'), )
def parseMonth(self, response):
request = Request(response.url, callback = self.getMonthEvents)
yield request
def getMonthEvents(self, response):
print(response.url)
在parseMonth中復制請求時,請求將被過濾為重復項(請參閱文檔) 。 將dont_filter=True
添加到您的請求中,以便不對其進行過濾。
request = Request(response.url, dont_filter=True, callback = self.getMonthEvents)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.