爬取我爱我家网站二手房信息

news/2024/5/20 13:54:26/文章来源:https://blog.csdn.net/Stranger_top/article/details/113088322

items文件定义爬取数据:

apartment = scrapy.Field()
total_price = scrapy.Field()
agent = scrapy.Field()
image_urls = scrapy.Field()
images = scrapy.Field()

spider文件:

# -*- coding: utf-8 -*-
import scrapy
from pachong2.items import Pachong2Itemclass WoaiwojiaSpider(scrapy.Spider):name = 'woaiwojia'allowed_domains = ['bj.5i5j.com']start_urls = ['http://bj.5i5j.com/']# 重写def start_requests(self):urls = ['https://bj.5i5j.com/ershoufang/n' + str(x) + '/' for x in range(1, 5)]for url in urls:yield scrapy.Request(url=url, callback=self.parsex)# 房源列表页解析def parsex(self, response):print("response状态码:", response.status)print("部分网页代码:", response.body)house_list = response.xpath('/html/body/div[6]/div[1]/div[2]/ul/li')print("房源列表:",house_list)for house in house_list:item = Pachong2Item()item['apartment'] = house.xpath('div[2]/h3/a/text()').extract_first()print("标题:", item['apartment'])item['total_price'] = house.xpath('div[2]/div[1]/div/p[1]/strong/text()').extract_first()print("总价:", item['total_price'])# 解析并构造详情页URLdetail_url = response.urljoin(house.xpath('div[2]/h3/a/@href').extract_first())# 继续请求详情页URL,用用meta传递已经爬取到的部分数据# 使用callback指定回调函数yield scrapy.Request(detail_url, meta={'item': item}, callback=self.parse_detail)# next_url = response.xpath('//div[@class="pageSty rf"]/a[1]/@href').extract_first()# if next_url and page_num < 3:#     next_url = response.urljoin(next_url)#     yield scrapy.Request(next_url, callback=self.parse)# 房源详情页面解析def parse_detail(self, response):# 接受传递过来的数据print("detail_response:", response.xpath)item = response.meta['item']# 继续向Item添加经纪人信息item['agent'] = response.xpath('/html/body/div[5]/div[2]/div[2]/div[3]/ul/li[2]/h3/a/text()').extract_first()item['image_urls'] = response.xpath('/html/body/div[5]/div[2]/div[1]/div[1]/div/a[1]/img/@src').extract()print('agent:', item['agent'])yield item

settings文件:

BOT_NAME = 'pachong2'SPIDER_MODULES = ['pachong2.spiders']
NEWSPIDER_MODULE = 'pachong2.spiders'
ROBOTSTXT_OBEY = False
DOWNLOAD_DELAY = 3
COOKIES_ENABLED = False
# 图片下载存储
ITEM_PIPELINES = {'scrapy.pipelines.images.ImagesPipeline':1}
IMAGES_STORE='E:\Projects\PycharmProjects\pachong2\images'
# 设置cookie,通过浏览器开发工具获取
DEFAULT_REQUEST_HEADERS = {'Cookie':'......'}
# 自动限速
AUTOTHROTTLE_ENABLED = True
HTTPERROR_ALLOWED_CODES = [403]
# 中间件
DOWNLOADER_MIDDLEWARES = {# 'scrapy.contrib.downloadermiddleware.httpproxy.HttpProxyMiddleware':None,# 'pachong2.middlewares.ProxyMiddleWare':125,# 'scrapy.downloadermiddlewares.defaultheaders.DefaultHeadersMiddleware':None'pachong2.middlewares.UserAgentMiddleware': 543,'scrapy.downloadermiddlewares.useragent.UserAgentMiddleware':None, # 关闭默认的USER-AGENT中间建
}

pipelines文件:

class Pachong2Pipeline(object):def process_item(self, item, spider):return item

中间件设置自己的user-agent信息:

class UserAgentMiddleware(object):def process_request(self, request, spider):USER_AGENT = ''request.headers.setdefault('User-Agent', USER_AGENT)

结果:
在这里插入图片描述
在这里插入图片描述
仅供个人学习,如有侵权联系删除

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_862951.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用httpwebrequest发送数据到网站

怎样通过HttpWebRequest 发送 POST 请求到一个网页服务器&#xff1f;例如编写个程序实现自动用户登录&#xff0c;自动提交表单数据到网站等。 假如某个页面有个如下的表单&#xff08;Form&#xff09;&#xff1a; <form name"form1" action" http://www.…

大型电子商务网站架构

大型电子商务网站架构 (转自&#xff1a;http://www.cnblogs.com/skydau/archive/2009/08/30/1556701.html) 7.同一个网站的多语言该如何处理是好,使用配置文件然后cookie或url来判别?客户是自己公司&#xff0c;使用标准方法即可 8.电子商务网站最多的就是 商品的打折方式和…

小型电子商务网站设计原则

最近谈得最多的话题莫过于大规模&#xff0c;大数据量&#xff0c;高性能&#xff0c;高并发等架构话题&#xff0c;其实一个电子商务网站开始时一定是小规模&#xff0c;小数据量&#xff0c;用不着把架构弄得过于复杂。高度设计、过度扩展(高德纳大爷也说过&#xff0c;"…

正确地定制您的网站 ndash; 文件替代机制,zencart

很多用户对zen cart做了自己的修改&#xff0c;非常好&#xff01;但同时&#xff0c;一些用户修改了很多重要的文件&#xff0c;例如&#xff1a; /includes/filenames.php /includes/languages/schinese.php /includes/languages/schinese/*.php 等等… 友情提示&#xff…

网站集成支付宝

&#xff08;本文转载于http://stephen830.javaeye.com/blog/254827 ) 国内电子商务系统实现的基本流程如下&#xff1a; 客户在系统内下订单 -> 系统根据订单生成支付宝接口url -> 客户通过url使用支付宝&#xff08;网上银行&#xff09;付款 -> 支付宝将客户的付款…

淘宝技术发展(个人网站)之二

个人网站 2003年4月7日&#xff0c;马云&#xff0c;在杭州&#xff0c;成立了一个神秘的组织。他叫来十位员工&#xff0c;要他们签了一份协议&#xff0c;这份协议要求他们立刻离开阿里巴巴&#xff0c;去做一个神秘的项目。这个项目要求绝对保密&#xff0c;老马戏称“连说梦…

如何编写外贸电子商务网站产品的描述信息

把自己的商品信息准确地传递给你的客户&#xff0c;是运行电子商务的重要环节&#xff0c;也是促成客户选购产品的关键因素。对于电子商务网站来说商品的描述是必不可少&#xff0c;是对图片信息的重要的补充。图片传递给客户的只是商品的形状和颜色的信息&#xff0c;对于性能…

利用CDN技术加速国外客户访问外贸电子商务网站的速度

很多外贸企业都遇到过这样的问题&#xff1a;网站做得非常好&#xff0c;可还是经常得到国外客户的反馈说是访问网站的速度慢&#xff0c;这不仅会在很大程度上影响企业的外贸交易&#xff0c;还会很大的影响到企业的形象。保证国外客户高速地访问您的网站&#xff0c;是您在外…

网站数据分析工具

对于外贸电子商务平台而言&#xff0c;除了网站销售的产品内容及销售额外,那些很有可能直接转化为订单的数据&#xff0c;包括流量、订阅数、排名和主机等&#xff0c;也是非常重要的&#xff0c;另外还有一些其他平台的相关数据及盈利情况等等&#xff0c;也都需要外贸电子商务…

使用 Startssl 提供的免费证书+Nginx 搭建 https 的网站

使用 Startssl 提供的免费证书Nginx 搭建 https 的网站 Posted on October 1, 2010 by gkp Startssl 是一家提供免费 SSL 证书的公司&#xff0c;我们可以用其搭建 https 网站&#xff0c;貌似可以被除去Opera 外的所有主流浏览器所信任&#xff0c;过程简单记录如下&#x…

提高网站转化率,将观众变为永久用户的九个关键点

本文是博文《9 Keys to Increase Website Conversion Rate and Turn Visitors into Customers》的译文&#xff0c;编译内容如下&#xff1a; 从根本上讲&#xff0c;本文是一篇关于吸引在线用户注意力的文章&#xff0c;因为如果没有注意力&#xff0c;就没有人看你的链接、图…

PHP网站备份程序代码分享

php中通过代码备份网站的实现代码&#xff0c;很方面大家在线备份网站&#xff0c;需要的朋友可以参考下。 详细出处参考&#xff1a;http://www.jb51.net/article/27337.htm 效果图: PHP代码 <html> <head> <meta http-equiv"Content-Type&q…

使用ThinkPHP框架快速开发网站(多图)

使用ThinkPHP框架快速搭建网站 这一周一直忙于做实验室的网站&#xff0c;基本功能算是完成了。比较有收获的是大概了解了ThinkPHP框架。写一些东西留作纪念吧。如果对于同样是Web方面新手的你有一丝丝帮助&#xff0c;那就更好了挖。 以前用PHP做过一个很蹩脚的网站&#xff0…

微信扫描二维码登录网站技术原理

微信扫描二维码登录网站 网站应用微信登录开发指南 微信扫描二维码登录网站是微信开放平台下网站应用的一种接口实现的功能。微信开放平台的网址是 https://open.weixin.qq.com 准备工作 网站应用微信登录是基于OAuth2.0协议标准构建的微信OAuth2.0授权登录系统。 在进行微信…

Nginx网站服务的搭建和优化、重写跳转

1.Nginx简介 1.概况 Nginx&#xff1a; Nginx是一个高性能的HTTP和反向代理服务器是一款轻量级的高性能的web服务器/反向代理服务器/电子邮件&#xff08;IMAP/POP3&#xff09;代理服务器单台物理服务器可支持30 000&#xff5e;50 000个并发请求&#xff08;实际上20000-3…

山寨网站正确的做法

下了网站的源码&#xff0c;结果有问题&#xff0c;短时间调试无果&#xff0c;试了各种网站下载器&#xff0c;下载的网站不能看。最后&#xff0c;决定手动来。 思路&#xff1a;一个网页一个网页的扒 工具&#xff1a;火狐浏览器、迅雷、一个新建的文本、PHPStorm9、PHPStud…

网站二级域名与一级目录的选择

读者问: 很多人都说子站包围主站会很有利,想问一下关于子站的问题 子站(二级域名)相对于网站的一级目录来说,权威性是不是要大些? 搜索引擎是把子站作为独立的一个站来看待?还是也算为一级目录来看待? 如果是作为独立的一个站来看待,那主站的内容就少了,那流量会算进主站吗?…

使用Display: None来隐藏内容是合法的SEO吗?

如果你正在优化一个有上千页面的网站&#xff0c;那么你很有可能同一个CMS系统在打交道。但是&#xff0c;CMS系统经常会带来很多搜索引擎优化问题。如果CMS的开发者不熟悉搜索引擎工作原理的话&#xff0c;即使他们本来没有打算欺骗搜索引擎&#xff0c;但最终的结果还是会导致…

Web发展简史((webapp+Java原生)移动端开发 )+web网站)

Web发展简史--------->(&#xff08;webappJava原生&#xff09;移动端开发(微信小程序&#xff0c;公众号&#xff0c;头条app))web网站) Web发展简史 1&#xff1a;在那时&#xff0c;Web开发还比较简单&#xff0c;开发者经常会去操作web服务器(主要还是他自己的机器)&…

购买云服务器和搭建PHP环境,运行PHP个人网站

1&#xff1a;首先需要购买云服务器 阿里云&#xff0c;百度云&#xff0c;腾讯云&#xff0c;华为云等那一家的都一样。我以腾讯云为例子说明&#xff0c;我买的是腾讯云。 1&#xff1a;本人学生&#xff0c;直接购买腾讯云10元一月的学生服务器。购买前需要先注册腾讯云的账…