您的位置:首页 > 其它

scrapy学习记录0401

2017-04-01 21:02 155 查看

问题:

1.属性中是链接,网页显示是字,如何提取这个字呢?(text()结果如果是网址,可以用string进行转换,如
ip.xpath('string(td[5])')[0].extract()
?

2.为何我不能再xpath中使用[]的功能?像
td[4]
这种

ip. xpath('td[4]/text()')[0].extract()


3.爬取的网页浏览器能打开,再cmd里就是403,为没有权限访问此站。 百度股票是403,西刺是500.

待实践:

1.
response.css('.stock-bets').css('.bets-name').extract()[0]


历史错误:

1.
return scrapy.Request(urls, callback=self.parse_stock)
这里的urls不能是列表。

2.忘了写yield也是醉了。用以下代码发现的。

from scrapy.shell import inspect_response

inspect_response(response, self)


3.取某标签的值时把标签写错了导致结果为空[].

css/xpath用法总结:

1.区别看清楚了:

1)
xpath('//a/@href')
css('a::attr(href)')


2)
xpath('//title/text()')
css(title::text)


3)当不只一个属性时,xpath要用contains, css要用*:

1.
xpath('//a[contains(@href,"image")]/@href'</li>

<li>2.
css(‘a[href*=”image”]::attr(href)’)
</li></ul></li>

<li>4)一个属性时:
xpath(‘div[@id=”quotesearch”’]/`
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: