【发布时间】:2014-05-24 00:23:40
【问题描述】:
我正在尝试抓取谷歌搜索,人们也在搜索链接。
例如,当您在 Google 上搜索“Christopher Nolan”时。谷歌还制作了一个“也搜索的人”,其中包括与我们的搜索相关的人的图像。在这种情况下,我们的人物也会搜索产品(Christian bale、Emma Thomas、Zack Synder 等)。我有兴趣抓取这些数据。
我正在使用scrapy 框架并编写了一个简单的scraper,但它返回一个空的 CSV 数据文件。以下是我到目前为止的代码,感谢您的帮助。希望一切都清楚我想要实现的目标。我使用 Xpath 助手(谷歌应用程序)来帮助找到 Xpath。
我的代码:
# PyGSSpider(spidder folder)
from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
from scrapy.selector import Selector
from PyGoogleSearch.items import PyGSItem
import sys
class PyGSSpider(CrawlSpider):
name = "google"
allowed_domains = ["www.google.com"]
start_urls = ["https://www.google.com/#q=christopher+nolan"]
#Extracts Christopher Nolan link
rules = [
Rule(SgmlLinkExtractor(allow=("https://www.google.com/search?q=christpher+noaln&oq=christpher+noaln&aqs")), follow=True),
Rule(SgmlLinkExtractor(allow=()), callback='parse_item')
]
#Parse function for extracting the people also search link.
def parse_item(self,response):
self.log('Hi, this is an item page! %s' % response.url)
sel=Selector(response)
item=PyGSItem()
item['peoplealsosearchfor'] = sel.xpath('//div[@id="cnt"]/@href').extract()
return item
items.py:
from scrapy.item import Item, Field
class PyGSItem(Item):
peoplealsosearchfor = Field()
【问题讨论】:
-
你到底在寻求什么帮助?
-
我怎么能废人也搜索链接
标签: python web-scraping scrapy