###scrapyで得たデータを用いてデータベースを構築しています。
ページの種類に応じてparser1とparser2を使い分けていて、それぞれを別々のテーブルに格納しています。また、parser1とparser2に共通の変数hogeをキーにして、テーブル間のリレーションを取ろうとしてるのですが、データの表記揺れによりうまくリレーションが取れないデータが発生してしまいます。
そこで、parser1で得た変数hogeをparser2に渡して使いたいと考えています。
やり方はあるでしょうか。
###該当のソースコード
python
1# spider.py 2from scrapy import Request 3from scrapy.spider import BaseSpider 4from create_filmdb.items import Item1,Item2 5from bs4 import BeautifulSoup 6 7class Spider(BaseSpider): 8 name = 'spider' 9 allowed_domains = ['#domain#'] 10 11 def start_requests(self): 12 yield Request('#url#', self.parser1) 13 14 def parser1(self,response): 15 item = item1() 16 soup = BeautifulSoup(response) 17 hoge1 = #スクレイピング結果# 18 next_url = #スクレイピング結果# 19 item['hoge'] = hoge 20 yield Request(next_url, self.parser2) 21 yield item 22 23 def parser2(self,response): 24 item = Item2() 25 soup = BeautifulSoup(response) 26 hoge = #スクレイピング結果# 27 item['hoge'] = hoge 28 yield item
###補足情報
Python 3.5.2
Scrapy 1.2.1
postgresql
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。