1
我想從網站上刮取數據:http://www.consumercomplaints.in/?search=ecom-express# 我希望我的請求對於那些經驗豐富的Scrapy用戶來說非常簡單直接。scrapy - 刮下一頁上的字段,然後返回到舊頁面
問題:我試圖抓取每個review.By的數據,**我的意思是主標題,副標題,用戶名,日期和審查。 **但是我無法得到評論,因爲我想要查看的內容是轉到嵌入主標題的鏈接,然後在第一頁上獲取整個評論而不是簡短的評論,然後爲每個評論做這件事。
我的蜘蛛類:
from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.spider import BaseSpider
from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
from scrapy.selector import HtmlXPathSelector
from consumercomplaint.items import ConsumercomplaintItem
class MySpider(BaseSpider):
name = "consumer"
allowed_domains = ["http://www.consumercomplaints.in"]
start_urls = ["http://www.consumercomplaints.in/?search=ecom-express&page=11"]
def parse(self, response):
hxs = HtmlXPathSelector(response)
titles = hxs.select('//table[@width="100%"]')
print titles
items = []
del(titles[0])
for i in titles:
item = ConsumercomplaintItem()
item ["maintitle"] = i.select('.//a[1]//text()').extract()
item ["username"] = i.select('.//td[@class="small"]//a[2]/text()').extract()
item["date"]=i.select('.//td[@class="small"]/text()').extract()
item["subtitle"]=i.select('.//td[@class="compl-text"]/div/b[1]/text()').extract()
item["complaint"]=i.select('.//td[@class="compl-text"]/div/text()').extract()
items.append(item)
return items
我的物品類別:
from scrapy.item import Item, Field
class ConsumercomplaintItem(Item):
maintitle = Field()
username = Field()
date = Field()
subtitle = Field()
complaint = Field()
我在硒做到了這一點 - 如果你願意嘗試Selenium,只需給予一個提示 – duhaime