想请教大家几个关于scrapy的问题
时间:2011-05-12
来源:互联网
最近正在学习使用scrapy抓取网页
我想抓取人民网一个页面上的新闻,并且加入了下一页的判断,写出了如下的爬虫程序,可运行总是显示(referer: None),不知道是哪里出的问题。
还有就是按官网的示例试着抓取中文网页,输出的总是unicode代码形式,print出来也不行,然后导出到csv文件中更是如此,不知道怎么才能直接显示中文
还望指点
谢谢回帖~
Python code
我想抓取人民网一个页面上的新闻,并且加入了下一页的判断,写出了如下的爬虫程序,可运行总是显示(referer: None),不知道是哪里出的问题。
还有就是按官网的示例试着抓取中文网页,输出的总是unicode代码形式,print出来也不行,然后导出到csv文件中更是如此,不知道怎么才能直接显示中文
还望指点
谢谢回帖~
Python code
#!/usr/bin/python # -*- coding: UTF-8 -*- from urlparse import urljoin from scrapy.selector import HtmlXPathSelector from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor from scrapy.http import Request from scrapy.spider import BaseSpider from renmin.items import RenminItem class PeopleSpider(BaseSpider): name = 'people' allowed_domains = ['military.people.com.cn'] start_urls = ['http://military.people.com.cn/GB/1077/52987/index.html'] def parse(self, response): hxs = HtmlXPathSelector(response) sites = hxs.select('//div[@class="c_c"]/a/@href').extract() texts = hxs.select('//div[@class="c_c"]/a/text()').extract() print texts for site in sites: yield Request(site, callback=self.parse_post) page_links = hxs.select('//div[@class="c_c"]/table/tr/td/a') for link in page_links: if link.select('text()').extract()[0] == u'\u4e0b\u4e00\u9875': url = link.select('@href').extract()[0] yield Request(url, callback=self.parse) return def parse_post(self, response): hxs1 = HtmlXPathSelector(response) i = RenminItem() i['title'] = hxs1.select("//h1[@id='p_title']/text()").extract() i['link'] = response.url i['cont'] = hxs1.select("//div[@id='p_content']/text()").extract() page_links = hxs1.select("//div[@id='p_content']/center/table/tr/td/a") for link in page_links: if link.select('img/@src').extract()[0] == u'/img/next_b.gif': url = link.select('@href').extract()[0] yield Request(url, callback=self.parse_post) yield i return SPIDER = PeopleSpider()
作者: whitebill2004 发布时间: 2011-05-12
请求头加上 Referer 头...
作者: mrshelly 发布时间: 2011-05-14
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28