爬虫類の練習 – チェーン家の不動産データと視覚的分析

プロジェクトgithupアドレス

プロジェクトの目的

クロールチェーンハウスのデータの可視化分析

ツール

Python3
治療

プロジェクトを作成する

def 、 Scrapy 、 人工知能发表评论取消回复 电子邮件地址不会被公开。必填项已用*标注 文章导航上一篇文章 上一篇 自动化流程开源框架BotSharp 下一篇文章 下一篇 用Python 进行深度学习 https://my.oschina.net/u/3851199/blog/2054749 自豪地采用WordPress治療のインストールと使用は、pycharmソフトウェアのチュートリアルの治療法を参照できます。端末: scrapy startproject scrapys-->网页分析按F12进入页面代码分析,点击元素选择图标->在选择左边需要的字段信息,在代码区就能看到所在的位置,如下图: 也可以ctrl+f在输入框中搜索,或用xpath获取需要的信息,框中用输入//div[@class="resblock-name"]-->数据爬取程序分析好了数据获取路径,我们开始构建爬虫程序。
我们在spiders文件夹下新建一个爬虫脚本lianjia_spider.py:数据存储到excel将数据存储于excel文件中,在主目录下新建一个存数据的文件夹results;修改pipelines.py如下运行爬虫在命令行输入scrapy crawl lianjia-->点击运行,结果如下:
数据可视化(待续...) 标签 def 、 Scrapy 、 人工知能发表评论取消回复 电子邮件地址不会被公开。必填项已用*标注 文章导航上一篇文章 上一篇 自动化流程开源框架BotSharp 下一篇文章 下一篇 用Python 进行深度学习 https://my.oschina.net/u/3851199/blog/2054749 自豪地采用WordPress

scrapy startproject scrapys-->网页分析按F12进入页面代码分析,点击元素选择图标->在选择左边需要的字段信息,在代码区就能看到所在的位置,如下图: 也可以ctrl+f在输入框中搜索,或用xpath获取需要的信息,框中用输入//div[@class="resblock-name"]-->数据爬取程序分析好了数据获取路径,我们开始构建爬虫程序。
我们在spiders文件夹下新建一个爬虫脚本lianjia_spider.py:数据存储到excel将数据存储于excel文件中,在主目录下新建一个存数据的文件夹results;修改pipelines.py如下运行爬虫在命令行输入scrapy crawl lianjia-->点击运行,结果如下:
数据可视化(待续...) 标签 def 、 Scrapy 、 人工知能发表评论取消回复 电子邮件地址不会被公开。必填项已用*标注 文章导航上一篇文章 上一篇 自动化流程开源框架BotSharp 下一篇文章 下一篇 用Python 进行深度学习 https://my.oschina.net/u/3851199/blog/2054749 自豪地采用WordPress

scrapy startproject scrapys-->网页分析按F12进入页面代码分析,点击元素选择图标->在选择左边需要的字段信息,在代码区就能看到所在的位置,如下图: 也可以ctrl+f在输入框中搜索,或用xpath获取需要的信息,框中用输入//div[@class="resblock-name"]-->数据爬取程序分析好了数据获取路径,我们开始构建爬虫程序。
我们在spiders文件夹下新建一个爬虫脚本lianjia_spider.py:数据存储到excel将数据存储于excel文件中,在主目录下新建一个存数据的文件夹results;修改pipelines.py如下运行爬虫在命令行输入scrapy crawl lianjia-->点击运行,结果如下:
数据可视化(待续...) 标签 def 、 Scrapy 、 人工知能发表评论取消回复 电子邮件地址不会被公开。必填项已用*标注 文章导航上一篇文章 上一篇 自动化流程开源框架BotSharp 下一篇文章 下一篇 用Python 进行深度学习 https://my.oschina.net/u/3851199/blog/2054749 自豪地采用WordPress

scrapy startproject scrapys-->网页分析按F12进入页面代码分析,点击元素选择图标->在选择左边需要的字段信息,在代码区就能看到所在的位置,如下图: 也可以ctrl+f在输入框中搜索,或用xpath获取需要的信息,框中用输入//div[@class="resblock-name"]-->数据爬取程序分析好了数据获取路径,我们开始构建爬虫程序。
我们在spiders文件夹下新建一个爬虫脚本lianjia_spider.py:数据存储到excel将数据存储于excel文件中,在主目录下新建一个存数据的文件夹results;修改pipelines.py如下运行爬虫在命令行输入scrapy crawl lianjia-->点击运行,结果如下:
数据可视化(待续...) 标签 def 、 Scrapy 、 人工知能发表评论取消回复 电子邮件地址不会被公开。必填项已用*标注 文章导航上一篇文章 上一篇 自动化流程开源框架BotSharp 下一篇文章 下一篇 用Python 进行深度学习 https://my.oschina.net/u/3851199/blog/2054749 自豪地采用WordPress

scrapy startproject scrapys-->网页分析按F12进入页面代码分析,点击元素选择图标->在选择左边需要的字段信息,在代码区就能看到所在的位置,如下图: 也可以ctrl+f在输入框中搜索,或用xpath获取需要的信息,框中用输入//div[@class="resblock-name"]-->数据爬取程序分析好了数据获取路径,我们开始构建爬虫程序。
我们在spiders文件夹下新建一个爬虫脚本lianjia_spider.py:数据存储到excel将数据存储于excel文件中,在主目录下新建一个存数据的文件夹results;修改pipelines.py如下运行爬虫在命令行输入scrapy crawl lianjia-->点击运行,结果如下:
数据可视化(待续...) 标签 def 、 Scrapy 、 人工知能发表评论取消回复 电子邮件地址不会被公开。必填项已用*标注 文章导航上一篇文章 上一篇 自动化流程开源框架BotSharp 下一篇文章 下一篇 用Python 进行深度学习 https://my.oschina.net/u/3851199/blog/2054749 自豪地采用WordPress

scrapy startproject scrapys-->网页分析按F12进入页面代码分析,点击元素选择图标->在选择左边需要的字段信息,在代码区就能看到所在的位置,如下图: 也可以ctrl+f在输入框中搜索,或用xpath获取需要的信息,框中用输入//div[@class="resblock-name"]-->数据爬取程序分析好了数据获取路径,我们开始构建爬虫程序。
我们在spiders文件夹下新建一个爬虫脚本lianjia_spider.py:数据存储到excel将数据存储于excel文件中,在主目录下新建一个存数据的文件夹results;修改pipelines.py如下运行爬虫在命令行输入scrapy crawl lianjia-->点击运行,结果如下:
数据可视化(待续...) 标签 def 、 Scrapy 、 人工知能发表评论取消回复 电子邮件地址不会被公开。必填项已用*标注 文章导航上一篇文章 上一篇 自动化流程开源框架BotSharp 下一篇文章 下一篇 用Python 进行深度学习 https://my.oschina.net/u/3851199/blog/2054749 自豪地采用WordPress

scrapy startproject scrapys-->网页分析按F12进入页面代码分析,点击元素选择图标->在选择左边需要的字段信息,在代码区就能看到所在的位置,如下图: 也可以ctrl+f在输入框中搜索,或用xpath获取需要的信息,框中用输入//div[@class="resblock-name"]-->数据爬取程序分析好了数据获取路径,我们开始构建爬虫程序。
我们在spiders文件夹下新建一个爬虫脚本lianjia_spider.py:数据存储到excel将数据存储于excel文件中,在主目录下新建一个存数据的文件夹results;修改pipelines.py如下运行爬虫在命令行输入scrapy crawl lianjia-->点击运行,结果如下:
数据可视化(待续...) 标签 def 、 Scrapy 、 人工知能发表评论取消回复 电子邮件地址不会被公开。必填项已用*标注 文章导航上一篇文章 上一篇 自动化流程开源框架BotSharp 下一篇文章 下一篇 用Python 进行深度学习 https://my.oschina.net/u/3851199/blog/2054749 自豪地采用WordPress

import re
import scrapy
from scrapy.http import Request
from scrapys.items import LianjiaItem
# scrapy用yield异步处理网页,想顺序处理网页,可以参考https://stackoverflow.com/questions/6566322/scrapy-crawl-urls-in-order
class LJ_houseSpider(scrapy.Spider):
name = "lianjia"
allowed_domains = ["gz.fang.lianjia.com"]  # 允许爬取的域名,非此域名的网页不会爬取
start_urls = [
"http://gz.fang.lianjia.com/loupan/"
]
def start_requests(self):
"""
这是一个重载函数,它的作用是发出第一个Request请求
:return:
"""
# 请求self.start_urls[0],返回的response会被送到回调函数parse中
yield Request(self.start_urls[0])
def parse(self, response):
max_page_text = response.xpath('//div[@class="page-box"]/@data-total-count').extract()
nums = re.findall(r'(\d+)',max_page_text[0])
max_num = int(nums[0])
max_num //= 10
print('max page>>>>>>>>>>>',max_num)
for i in range(max_num):
print(i)
url = self.start_urls[0]+'pg'+str(i+1)
yield Request(url, callback=self.extract_content, priority=max_num-i)  #该方法及其他的Request回调函数必须返回一个包含 Request 及(或) Item 的可迭代的对象
def extract_content(self, response):
paths = response.xpath('//ul[@class="resblock-list-wrapper"]/li')
items = []
for sel in paths:
item = LianjiaItem()
name = sel.xpath('div/div[@class="resblock-name"]/a[@class="name"]/text()').extract()
type = sel.xpath('div/div[@class="resblock-name"]/span[@class="resblock-type"]/text()').extract()
area_range = sel.xpath('div/div[@class="resblock-area"]/span/text()').extract()
mean_price = sel.xpath('div/div[@class="resblock-price"]/div[@class="main-price"]/span[@class="number"]/text()').extract()
mean_unit = sel.xpath('div/div[@class="resblock-price"]/div[@class="main-price"]/span[@class="desc"]/text()').extract()
start_price = sel.xpath('div/div[@class="resblock-price"]/div[@class="second"]/text()').extract()
tags = sel.xpath('div/div[@class="resblock-tag"]/span/text()').extract()
item['name'] = name[0] if name else 'NAN'
item['type'] = type[0] if type else 'NAN'
item['area_range'] = re.findall(r'\d+',area_range[0])+re.findall(r'-[\d+](.)+',area_range[0]) if area_range else []
item['mean_price'] = mean_price[0] +' '+ ' '.join(re.findall(r'\w[/]\w',mean_unit[0])) if mean_price and mean_unit else 'NAN'
item['start_price'] = re.findall(r'\d+',start_price[0])+re.findall(r'[\d+](.)+[/]',start_price[0]) if start_price else []
item['tags'] = tags
items.append(item)
return items

scrapy startproject scrapys-->网页分析按F12进入页面代码分析,点击元素选择图标->在选择左边需要的字段信息,在代码区就能看到所在的位置,如下图: 也可以ctrl+f在输入框中搜索,或用xpath获取需要的信息,框中用输入//div[@class="resblock-name"]-->数据爬取程序分析好了数据获取路径,我们开始构建爬虫程序。
我们在spiders文件夹下新建一个爬虫脚本lianjia_spider.py:数据存储到excel将数据存储于excel文件中,在主目录下新建一个存数据的文件夹results;修改pipelines.py如下运行爬虫在命令行输入scrapy crawl lianjia-->点击运行,结果如下:
数据可视化(待续...) 标签 def 、 Scrapy 、 人工知能发表评论取消回复 电子邮件地址不会被公开。必填项已用*标注 文章导航上一篇文章 上一篇 自动化流程开源框架BotSharp 下一篇文章 下一篇 用Python 进行深度学习 https://my.oschina.net/u/3851199/blog/2054749 自豪地采用WordPress

scrapy startproject scrapys-->网页分析按F12进入页面代码分析,点击元素选择图标->在选择左边需要的字段信息,在代码区就能看到所在的位置,如下图: 也可以ctrl+f在输入框中搜索,或用xpath获取需要的信息,框中用输入//div[@class="resblock-name"]-->数据爬取程序分析好了数据获取路径,我们开始构建爬虫程序。
我们在spiders文件夹下新建一个爬虫脚本lianjia_spider.py:数据存储到excel将数据存储于excel文件中,在主目录下新建一个存数据的文件夹results;修改pipelines.py如下运行爬虫在命令行输入scrapy crawl lianjia-->点击运行,结果如下:
数据可视化(待续...) 标签 def 、 Scrapy 、 人工知能发表评论取消回复 电子邮件地址不会被公开。必填项已用*标注 文章导航上一篇文章 上一篇 自动化流程开源框架BotSharp 下一篇文章 下一篇 用Python 进行深度学习 https://my.oschina.net/u/3851199/blog/2054749 自豪地采用WordPress

import xlwt
class ScrapysPipeline(object):
def process_item(self, item, spider):
return item
class LianJiaPipeline(object):
def __init__(self):
self.filename = 'results/tianjing_houses.xls'
self.outputbook = xlwt.Workbook()
self.table = self.outputbook.add_sheet('sheet1', cell_overwrite_ok=True)
self.nrow = 0
def process_item(self, item, spider):
self.table.write(self.nrow, 0, item['name'])
self.table.write(self.nrow, 1, item['type'])
self.table.write(self.nrow, 2, ' '.join(item['area_range']))
self.table.write(self.nrow, 3, item['mean_price'])
self.table.write(self.nrow, 4, ' '.join(item['start_price']))
self.table.write(self.nrow, 5, ' '.join(item['tags']))
self.nrow += 1
def close_spider(self, spider):
self.outputbook.save(self.filename)

scrapy startproject scrapys-->网页分析按F12进入页面代码分析,点击元素选择图标->在选择左边需要的字段信息,在代码区就能看到所在的位置,如下图: 也可以ctrl+f在输入框中搜索,或用xpath获取需要的信息,框中用输入//div[@class="resblock-name"]-->数据爬取程序分析好了数据获取路径,我们开始构建爬虫程序。
我们在spiders文件夹下新建一个爬虫脚本lianjia_spider.py:数据存储到excel将数据存储于excel文件中,在主目录下新建一个存数据的文件夹results;修改pipelines.py如下运行爬虫在命令行输入scrapy crawl lianjia-->点击运行,结果如下:
数据可视化(待续...) 标签 def 、 Scrapy 、 人工知能发表评论取消回复 电子邮件地址不会被公开。必填项已用*标注 文章导航上一篇文章 上一篇 自动化流程开源框架BotSharp 下一篇文章 下一篇 用Python 进行深度学习 https://my.oschina.net/u/3851199/blog/2054749 自豪地采用WordPress

scrapy startproject scrapys-->网页分析按F12进入页面代码分析,点击元素选择图标->在选择左边需要的字段信息,在代码区就能看到所在的位置,如下图: 也可以ctrl+f在输入框中搜索,或用xpath获取需要的信息,框中用输入//div[@class="resblock-name"]-->数据爬取程序分析好了数据获取路径,我们开始构建爬虫程序。
我们在spiders文件夹下新建一个爬虫脚本lianjia_spider.py:数据存储到excel将数据存储于excel文件中,在主目录下新建一个存数据的文件夹results;修改pipelines.py如下运行爬虫在命令行输入scrapy crawl lianjia-->点击运行,结果如下:
数据可视化(待续...) 标签 def 、 Scrapy 、 人工知能发表评论取消回复 电子邮件地址不会被公开。必填项已用*标注 文章导航上一篇文章 上一篇 自动化流程开源框架BotSharp 下一篇文章 下一篇 用Python 进行深度学习 https://my.oschina.net/u/3851199/blog/2054749 自豪地采用WordPress

scrapy startproject scrapys-->网页分析按F12进入页面代码分析,点击元素选择图标->在选择左边需要的字段信息,在代码区就能看到所在的位置,如下图: 也可以ctrl+f在输入框中搜索,或用xpath获取需要的信息,框中用输入//div[@class="resblock-name"]-->数据爬取程序分析好了数据获取路径,我们开始构建爬虫程序。
我们在spiders文件夹下新建一个爬虫脚本lianjia_spider.py:数据存储到excel将数据存储于excel文件中,在主目录下新建一个存数据的文件夹results;修改pipelines.py如下运行爬虫在命令行输入scrapy crawl lianjia-->点击运行,结果如下:
数据可视化(待续...) 标签 def 、 Scrapy 、 人工知能发表评论取消回复 电子邮件地址不会被公开。必填项已用*标注 文章导航上一篇文章 上一篇 自动化流程开源框架BotSharp 下一篇文章 下一篇 用Python 进行深度学习 https://my.oschina.net/u/3851199/blog/2054749 自豪地采用WordPress

scrapy startproject scrapys-->网页分析按F12进入页面代码分析,点击元素选择图标->在选择左边需要的字段信息,在代码区就能看到所在的位置,如下图: 也可以ctrl+f在输入框中搜索,或用xpath获取需要的信息,框中用输入//div[@class="resblock-name"]-->数据爬取程序分析好了数据获取路径,我们开始构建爬虫程序。
我们在spiders文件夹下新建一个爬虫脚本lianjia_spider.py:数据存储到excel将数据存储于excel文件中,在主目录下新建一个存数据的文件夹results;修改pipelines.py如下运行爬虫在命令行输入scrapy crawl lianjia-->点击运行,结果如下:
数据可视化(待续...) 标签 def 、 Scrapy 、 人工知能发表评论取消回复 电子邮件地址不会被公开。必填项已用*标注 文章导航上一篇文章 上一篇 自动化流程开源框架BotSharp 下一篇文章 下一篇 用Python 进行深度学习 https://my.oschina.net/u/3851199/blog/2054749 自豪地采用WordPress

scrapy startproject scrapys-->网页分析按F12进入页面代码分析,点击元素选择图标->在选择左边需要的字段信息,在代码区就能看到所在的位置,如下图: 也可以ctrl+f在输入框中搜索,或用xpath获取需要的信息,框中用输入//div[@class="resblock-name"]-->数据爬取程序分析好了数据获取路径,我们开始构建爬虫程序。
我们在spiders文件夹下新建一个爬虫脚本lianjia_spider.py:数据存储到excel将数据存储于excel文件中,在主目录下新建一个存数据的文件夹results;修改pipelines.py如下运行爬虫在命令行输入scrapy crawl lianjia-->点击运行,结果如下:
数据可视化(待续...) 标签 def 、 Scrapy 、 人工知能发表评论取消回复 电子邮件地址不会被公开。必填项已用*标注 文章导航上一篇文章 上一篇 自动化流程开源框架BotSharp 下一篇文章 下一篇 用Python 进行深度学习 https://my.oschina.net/u/3851199/blog/2054749 自豪地采用WordPress

元のサイトへ