xinwenfei 2016-02-27 03:29 采纳率: 0%
浏览 6067

scrapy如何循环抓取所有类似的页面

我是刚刚开始学习爬虫,模仿网上一个例子自己写了一个,想循环抓取所有页面新闻标题和链接,但是只能抓取到起始页面的。

这是抓取的起始页面

图片说明

从下面可以看到列表有很多,我想抓取所有的新闻条目,每一页的地址仅一个数字不同

图片说明

spider文件夹下的关键代码如下所示

 # -*- coding:utf-8 -*-

from scrapy.spiders import Spider
from scrapy.selector import Selector
from ahutNews.items import AhutnewsItem
from scrapy.spiders import Rule
from scrapy.linkextractors import LinkExtractor

class AhutNewsSpider(Spider):
    name = 'ahutnews'
    allowed_domains="ahut.edu.cn"
    start_urls=['http://news.ahut.edu.cn/list.jsp?a7t=314&a7p=2&a7c=20&urltype=tree.TreeTempUrl&wbtreeid=1002']
    rules=(
            Rule(LinkExtractor(allow=r"/list.jsp\?a7t=314&a7p=*"),
            callback="parse",follow=True),
        )


    def parse(self, response):

        hxs = Selector(response)
        titles = hxs.xpath('//tr[@height="26"]')
        items = []
        for data in titles:
            item = AhutnewsItem()

            title=data.xpath('td[1]/a/@title').extract()
            link=data.xpath('td[1]/a/@href').extract()

            item['title'] = [t.encode('utf-8') for t in title]
            item['link'] = "news.ahut.edu.cn" + [l.encode('utf-8') for l in link][0]
            items.append(item)
        return items
  • 写回答

3条回答

  • devmiao 2016-02-27 23:00
    关注
    评论

报告相同问题?

悬赏问题

  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置