关于python爬虫问题,我想我走错思路了。

这是我代码

 import scrapy
from scrapy.contrib.spiders import CrawlSpider,Rule
from scrapy.contrib.linkextractors import LinkExtractor
class Myspider(CrawlSpider):
    name="baidu"
    allowed_domains=['yuedu.baidu.com']
    start_urls=['http://yuedu.baidu.com']

    rules=(Rule(LinkExtractor(allow=('http://yuedu.baidu.com/book/list/15002',)),callback=('parse')),)
    def parse(self,response):
        self.log=('hi this is an item page! ~~~~~~~~~~~~~~~~~%s'% response.url)
        print self.log
        item=[]
        item=response.xpath('//span[@class="title"]/text()').extract()
        print item

然后运行scrapy crawl baidu
图片说明

看见了没hi this is an item page 下面是【】空的 搞了2小时了 怎么办啊 按照scrapy官方文档来的 不知道怎么错了 希望大神们解答!!!感激!

4个回答

为什么抓取class="title"里面的文字 抓去不了???

如果这个页面shiajax异步返回的,那么你抓取的结果就可能为空。因为你抓取的时候内容还没返回。所以为空。

clownstar
勿语星空丶 那意思还要写一两句网页返回代码? 但是我看见官方文档就没有说啊 也没返回
接近 5 年之前 回复

图片说明
你看官方文档也没返回就直接抓了

oyljerry
oyljerry 这个行为是网站行为,不同的网站方式不一样。官方的那个网站就可能没有用ajax
接近 5 年之前 回复

我知道了,在start_urls上就应该填“http://yuedu.baidu.com/book/list/15002” 这样抓取下来的 就对罗 还有 谢谢那位大哥 (上面评论的那位~~)

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问