我是 Scrapy 的新手,我想做的是制作一个爬虫,它只会跟随给定的 HTML 元素内的链接start_urls
举个例子,我只想让爬虫通过start_urls
设置为https://www.airbnb.com/s?location=New+York%2C+NY&checkin=&checkout=&guests=1的 AirBnB 列表
我不想抓取 URL 中的所有链接,我只想抓取 xpath 中的链接//*[@id="results"]
目前我正在使用以下代码来抓取所有链接,我怎样才能让它只抓取//*[@id="results"]
from scrapy.selector import HtmlXPathSelector
from tutorial.items import DmozItem
from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
from scrapy.selector import HtmlXPathSelector
class BSpider(CrawlSpider):
name = "bt"
#follow = True
allowed_domains = ["mydomain.com"]
start_urls = ["http://myurl.com/path"]
rules =(Rule(SgmlLinkExtractor(allow = ()) ,callback = 'parse_item', follow=True),)
def parse_item(self, response):
{parse code}
任何正确方向的提示将不胜感激,谢谢!