我一直在這個困難的時間。Scrapy,從StubHub刮來的價格數據
我想刮掉在好萊塢碗的布魯諾火星演唱會上列出的所有價格,這樣我就可以得到平均價格。
http://www.stubhub.com/bruno-mars-tickets/bruno-mars-hollywood-hollywood-bowl-31-5-2014-4449604/
我已經位於HTML中的價格和XPath是非常簡單的,但我不能讓任何值返回。
我認爲它與通過javascript或ajax生成的內容有關,但我無法弄清楚如何發送正確的請求來使代碼正常工作。
這是我有:
from scrapy.spider import BaseSpider
from scrapy.selector import Selector
from deeptix.items import DeeptixItem
class TicketSpider(BaseSpider):
name = "deeptix"
allowed_domains = ["stubhub.com"]
start_urls = ["http://www.stubhub.com/bruno-mars-tickets/bruno-mars-hollywood-hollywood-bowl-31-5-2014-4449604/"]
def parse(self, response):
sel = Selector(response)
sites = sel.xpath('//div[contains(@class, "q_cont")]')
items = []
for site in sites:
item = DeeptixItem()
item['price'] = site.xpath('span[contains(@class, "q")]/text()').extract()
items.append(item)
return items
任何幫助將不勝感激我一直是這樣一個苦苦掙扎相當一段時間。 預先感謝您!
我想你想要的是從返回JSON的API調用中獲取:https://www.stubhub.com/ticketAPI/restSvc/event/4449604/sort/price/0?ts=1396358054406 –