范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

手把手教你使用scrapy框架来爬取北京新发地价格行情(实战篇)

  来源:Python爬虫与数据挖掘
  作者:霖hero前言
  关于Scrapy理论的知识,可以参考我的上一篇文章,这里不再赘述,直接上干货。实战演练爬取分析
  首先我们进入北京新发地价格行情网页并打开开发者工具,如下图所示:
  经过简单的查找,发现每个getPriceData.html存放着价格行情的数据,由此可得,我们可以通过getPriceData.html来进行数据的获取。
  观察Headers请求,如下图所示:
  发现它是POST请求,请求URL链接是http://www.xinfadi.com.cn/getPriceData.html,current是翻页的重要参数,limit是每页有多少行数据,我们可以构造消息体,代码如下所示:data={ "limit": "20", "current":page }
  通过scrapy.Request()方法将消息体传入到参数里面。
  或者我们可以根据测试和观察规律,自己构造URL链接,通过观察分析,请求的URL链接可以为:http://www.xinfadi.com.cn/getPriceData.html?limit=20¤t=1 http://www.xinfadi.com.cn/getPriceData.html?limit=20¤t=2 http://www.xinfadi.com.cn/getPriceData.html?limit=20¤t=3创建Spider爬虫
  分析北京新发地价格行情后,接下来我们首先创建一个Scrapy项目,使用如下命令:scrapy startproject Vegetables
  这样我们就成功创建了一个Scrapy项目,项目文件如下所示:
  接下来创建spider爬虫,使用如下命令:scrapy genspider vegetables www.xinfadi.com.cn
  创建后vegetables.py内容如下所示:import scrapy   class VegetablesSpider(scrapy.Spider):    name = "vegetables"    allowed_domains = ["www.xinfadi.com.cn"]    start_urls = ["https://www.xinfadi.com.cn"]        def parse(self, response):        pass提取数据
  在提取数据前,我们首先把要爬取的数据字段在items.py文件中定义好,代码如下所示:import scrapy   class VegetablesItem(scrapy.Item):    # define the fields for your item here like:    productName = scrapy.Field()    lowPrice=scrapy.Field()    highPrice=scrapy.Field()
  这里我们定义了三个字段分别是productName、lowPrice、highPrice
  定义好字段后,接下来将在创建的vegetables.py文件中进行数据的提取,具体代码如下import scrapy from Vegetables.items import VegetablesItem   class VegetablesSpider(scrapy.Spider):    name = "vegetables"    allowed_domains = ["www.xinfadi.com.cn"]    def start_requests(self):        for i in range(1, 3):            url = f"http://www.xinfadi.com.cn/getPriceData.html?limit=20¤t={i}"            yield scrapy.Request(url=url, callback=self.parse)      def parse(self, response):        html = response.json()        fooddata = html.get("list")        for i in fooddata:            item=VegetablesItem()            item["highPrice"] =i.get("highPrice"),            item["lowPrice"] = i.get("lowPrice"),            item["prodName"] = i.get("prodName"),            yield item
  首先我们导入vegetablesitem,使用start_requests函数实现翻页,大家可以使用刚才我们所讲的方法实现翻页,实现翻页后,我们通过编写parse()方法实现数据的获取,首先我们把引擎响应的数据以json()格式存放在html里面,调用get()方法来提取我们想要的数据,最后通过yield生成器返回给引擎。
  最后我们在settings.py设置引擎的启动,代码如下所示:ITEM_PIPELINES = {   "Vegetables.pipelines.VegetablesPipeline": 300, }
  在这里我们就不保存数据在MongoDB数据库里面了,我们直接启动Spider爬虫并把数据以csv格式输出,使用如下命令:scrapy crawl vegetables -o 11.c
  运行结果如下:
  好了,Scrapy框架爬取北京新发地就讲解到这里了,感谢观看!!!总结
  大家好,我是霖hero。这篇文章基于上篇理论文章,主要给大家分享了Scrapy爬虫框架的实战内容,Scrapy是一个基于Twisted的异步处理框架,是纯Python实现的爬虫框架,是提取结构性数据而编写的应用框架,其架构清晰,模块之间的耦合程度低,可扩展性极强。

40004999元手机性价比排名小米两款手机上榜谈及手机的性价比,离不开的话题是处理器,毕竟是直接决定了设备性能,这是最基础也是最重要的配置之一。芯片方面,目前关注度最高的莫过于联发科,前不久发布的天玑9000天玑8000系列已影像性能都有升杯体验,vivoX80Pro成上半年最值得入手的旗舰?恰逢五一假期,相信不少人都会选择在这时候换一款颜值高拍摄能力强的手机携带出游。当然,今年目前已经亮相的旗舰机很多,但是如果你是一个对拍照有着更高要求的人,那我个人建议直接入手viv电动三轮车老年代步车迎新规,实施一车一码,赋码代替驾照随着新能源电动汽车的普及,越来越多的机动车加快了电动化进程,也有一些代步车打着新能源的旗号进入市场,这类车辆深受中老年人的喜爱,所以也被称为老年代步车。与常见的汽车不同,老年代步车国家铁路局到2025年,智能铁路技术全面突破据国家铁路局网站23日消息,国家铁路局印发十四五铁路科技创新规划。规划提到,目标到2025年,铁路创新能力科技实力进一步提升,技术装备更加先进适用,工程建造技术持续领先,运输服务技国美探索数字化转型聚焦家生活赛道潘宇静中国证券报中证网中证网讯(记者潘宇静)国美近期频繁与大厂展开合作,并公告提前偿还了一笔17亿元的企业债。国美零售副总裁方巍近日在接受记者采访时表示,国美接连偿还大额债务,体现月壤中首次成功培育出植物来源科技日报科技日报北京5月15日电(记者张梦然)通讯生物学杂志12日发表一项太空生物学实验,科学家研究了植物在月球上生长的可行性,表明与在地球火山灰中相比,拟南芥植株在月球土壤样自动化冒烟测试unittest,pytest哪家强?前言之前有一段时间一直用PythonUittest做自动化测试,觉得Uittest组织冒烟用例比较繁琐,后来康哥提示我使用pytest。mark来组织冒烟用例本文讲述以下几个内容1美航企联名摊牌,反对部署美国5G,只有华为5G可以解决美国七家航空公司联名阻止电信运营商部署5G网络。这下美国黑宫又要头痛了,其实这已经不是美国黑宫电信运营商和航空公司之间第一次起冲突了,此前,已经进行了多轮博弈,航空公司的目的就是阻蔚来新年打响进军车险第一枪!造车新势力缘何如此迫切?距离新能源车险上线尚不满一个月,以蔚来为代表的国内新能源造车新势力,便迫不及待地抢滩这块蓝海。天眼查显示,1月19日,蔚来保险经纪有限公司成立(简称蔚来保险经纪),注册资本5000IPO突现中止潮,逾60家公司中招,祸起乐视网中介机构被查极目新闻记者徐蔚资本市场遭遇2022年首起黑天鹅事件。1月26日,深交所创业板与上交所科创板60个IPO项目被中止,事因均为聘请的证券服务机构被证监会立案调查,涉及中德证券有限责任手机流量套餐,限速1Mbps后实际网速只有100KBs早上收到移动发来短信,短信内容如下,限速提醒尊敬的客户,截至1月27日9时34分,您的国内高速流量已使用完毕。根据业务规则,本月后续国内流量免费,国内上网速率将降至不高于1Mbps
五行缺水的人房屋装修要注意什么?每一个人的五行布局从出世那一刻起就早已决策好啦,为了更好地追求完美五行的均衡进而做到八字命理上的健全,就需要根据五行相生相克的基本原理从一些层面来配制,那麼,五行缺水的人到装修房屋翘首期盼,2021西安第47届蓝装家博会时间已定翘首期盼,由陕西蓝装丝路会展有限公司承办,社会各界给予支持的中国西安第47届蓝装家博会于8月2022日,即将在浐灞西安国际会展中心盛大举办,这将是本年度最受关注的一次秋季大展!备受金秋大展,蓝装家博会新增6个城市再战辉煌互联网时代传统零售迎来了冰点期,如何突破当下的困境,近年来,会展行业异军突起逐渐成熟,打破了传统行业的局限性。聚集全行业多品牌商,为消费者提供一站式需求,俨然成为新经济趋势。蓝装家2021西安第46届蓝装家博会完美收官展商业主双赢而归6月13日,为期2天的西安第46届蓝装家博会在浐灞西安国际会展中心完美落下帷幕。在2天的展期里,现场汇聚了500家装大牌,10万爆款产品,吸引了约上万人次业主进场逛购消费,记者从方天呐!还有人不知道装修完要成品保护吗?装修成品保护,是装修中一个非常关键不可忽略的一个项目。如果装修成品保护没做好,比如地砖如今房屋质量,特别是感观质量的好坏,不仅与工程建设材料施工工艺工人技术环境等有关,而且还受成品关键词装修用壁纸好还是刷漆好?墙面的装饰方法多样,其中为普及的就是刷漆和贴壁纸这两种方式了!我们都知道,对于小户型来说,合理的装饰方法对于房屋整体所起到的效果是非常大的,那么在进行墙面装饰的时候究竟哪种方法更为硬核来袭8。2122日蓝装婚博会即将为你开启盛宴引领婚嫁新时尚聚焦品牌新风向蓝装婚博会即蓝装婚庆博览会,是以婚礼策划婚宴酒店婚纱摄影婚纱礼服婚庆礼品婚车租赁结婚首饰等为主题的展览会,一站式满足婚礼所需环节,能为筹婚新人提供高水准直击家博会太原第4届蓝装家博会正在火爆进行中与时代同行,见证行业辉煌!2021年7月1718日太原第4届蓝装家博会于太原煤炭交易中心如期举办。我在家博会现场,你来了吗?实名预约或现场购票,戴好口罩,扫码亮码等,做好了一系列防家博会直击西安第46届蓝装家博会火爆进行中年中汇聚,人气爆棚!今日(6月12日),备受全西安市民瞩目的西安第46届蓝装家博会终于在浐灞西安国际会展中心盛大开幕了,现场人潮涌动,20000的展馆汇聚了500家装大牌,涵盖了陶在跨界中发现价值风投眼中的2020农业科技投资趋势资本实验室今日投资关注聚焦前沿科技创新与传统产业升级张珂过去十年间,在物联网大数据无人机机器人人工智能等新技术的加持下,传统农业已经努力向数字化智能化方向转型。越来越多的农民开始依这些公司正在通过新技术推动智慧城市与公共安全建设资本实验室今日创新观察聚焦前沿科技创新与传统产业升级智慧城市正在成为全球城市发展的重要方向,而公共安全则是智慧城市的一个重要领域。在这一新的背景之下,随着传感器物联网大数据和人工智