首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >抓取网页信息的内部链接

抓取网页信息的内部链接
EN

Stack Overflow用户
提问于 2017-08-21 08:03:07
回答 2查看 56关注 0票数 1

我正在尝试爬取页面JobStreet

我能够抓取主页上的信息,但是当我试图抓取页面的内部链接时,我的问题就出现了,例如第一个发布的here

这是我的代码片段:

代码语言:javascript
运行
复制
import scrapy

from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
from scrapy.contrib.spiders import CrawlSpider, Rule
from scrapy import Item, Field

class IT(scrapy.Spider):
    name = 'IT'

    allowed_domains = ["www.jobstreet.com.sg"]
    start_urls = [
        'https://www.jobstreet.com.sg/en/job-search/job-vacancy.php?key=&specialization=191%2C192%2C193&area=&salary=&ojs=3&src=12',
    ]

    rules = (
        Rule(SgmlLinkExtractor(allow=[r'/en/job/*.'], restrict_xpaths=('//*[(@class = "position-title-link")]',)), callback='parse_info', follow=True)
    )


    def parse_info(self, response):

        self.logger.info('response.url=%s' % response.url)

无法从parse_info获得任何类型的响应。

EN

回答 2

Stack Overflow用户

发布于 2017-08-21 09:43:22

你可以改变

代码语言:javascript
运行
复制
scrapy.Spider

代码语言:javascript
运行
复制
CrawlSpider
票数 3
EN

Stack Overflow用户

发布于 2017-08-22 21:02:50

你改变了

代码语言:javascript
运行
复制
scrapy.Spider

代码语言:javascript
运行
复制
CrawlSpider

但有时,当你使用回调规则时,它不起作用。你就可以使用它了。

代码语言:javascript
运行
复制
    def parse_start_url(self, response):
        list(self.parse_info(response))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45787869

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档