美文网首页
python爬取jquery数据

python爬取jquery数据

作者: CheeeerYan | 来源:发表于2019-07-10 21:51 被阅读0次

在使用tableau进行学习的过程中发现,一些比较偏市场的数据没有一个较好的获取途径,以便我们分析一些较为有用的数据。因此第一步,我们先进行数据的爬取。

1. python环境和脚本

本次想要分析的为 深圳2019年6月份在售新盘的数据,因此我们先找到数据的源网站,官方的网站数据分布比较散落,因此决定使用咚咚找房的哈哈。

比如某个新盘的价格列表如 http://bol.szhome.com/baj/8727.html

这里先看一下response中是否有页面显示的内容,发现这个网页是没有的,那我们就不能在response中根据位置来得到数据。

翻一页,看一下数据是怎样返回的,根据返回的json数据可以看出是jquery返回的数据,构造数据只需要看一下翻页请求中的url和参数规律即可。

响应中的json数据,以此来获得数据。。

请求结果的

2. 编写脚本并跑一跑

爬取数据的脚本如下,jquery类的数据都可以用下面的改一下请求和接收的返回数据就可以了。


#coding:utf-8

import requests

from urllib.parse import urlencode

import json

def parse_ajax_web(pageindex,teda):

    url = 'http://bol.szhome.com/Project/GetBolBaList/'

    parm = {

        'page': pageindex,

        'pageSize': 20,

        'id': '45153-1-0-0',

    }

    headers = {

        "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.75 Safari/537.36",

        "Referer": "http://bol.szhome.com/baj/5917.html",

        'x-Requested-with': 'XMLHttpRequest',

        'Origin': 'http://bol.szhome.com',

        'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',

        'Cookie': 'Hm_lvt_9a7b16ce65b422c3a2b3f1d30d705175=1561875931; Hm_lpvt_9a7b16ce65b422c3a2b3f1d30d705175=1561875931; Hm_lvt_c26237ea59fbcd4df5bf21d4e0b85a64=1561876924; Hm_lpvt_c26237ea59fbcd4df5bf21d4e0b85a64=1561907011',

        'Content-Length': '33',

        'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',

        'Connection': 'keep-alive',

        'Accept-Encoding': 'gzip, deflate',

        'Accept-Language': 'zh-CN,zh;q=0.9',

    }

    response = requests.post(url, headers=headers,data=urlencode(parm))

    if response.status_code == 200:

        json = response.json()

        data = json.get('list')

    for item in data: 

        if item.get('XMMC') is not None:

            linedata = item.get('XMMC')+","+item.get('LD')+ ","+item.get('ZH')+ ","+item.get('JZMJ')+ ","+item.get('LC')+ ","+item.get('FH')+ ","+item.get('BAJ') +"\n"

            teda.write(linedata)

def main():

    with open("D:/data.txt",'w') as teda:

        for pageindex in (range(1,95)):

            parse_ajax_web(pageindex,teda)

if __name__ == '__main__':

    main()

3、得到数据并分析

按照上述脚本分别爬取其他楼盘的数据,汇总后导入tablau中

相关文章

  • python爬取jquery数据

    在使用tableau进行学习的过程中发现,一些比较偏市场的数据没有一个较好的获取途径,以便我们分析一些较为有用的数...

  • Python学习

    python爬虫(五) python爬虫爬取豆瓣电影Top250数据 利用python爬取豆瓣电影TOP250页面...

  • Python学习

    python爬虫(四) python爬虫爬取豆瓣电影数据 今天我们爬取一下豆瓣电影TOP250页面电影的数据,依然...

  • 【二】PYTHON爬取全国新房房价与浅析

    【一】学PYTHON及爬虫的一些总结 【二】PYTHON爬取全国新房房价与浅析 PART ONE:【数据采集】爬取...

  • Python爬虫:如何爬取分页数据?

    上一篇文章《产品经理学Python:如何爬取单页数据?》中说了爬取单页数据的方法,这篇文章详细解释如何爬取多页数据...

  • python 爬虫框架scrapy

    由于公司最近要写一个数据爬取工具,以前没接触过python 使用原生python 开发了一套携程国内酒店数据爬取,...

  • 利用python爬取股票交易数据

    利用python爬取股票交易数据 分析网站 找到返回的url 爬取股票交易数据 思路,我们利用request来请求...

  • python爬取数据

    嘿,今天的你过的还好吗,今天学习一下python如何爬取网页数据 用到了两个包 requests bs4 如果lx...

  • 使用Python的Scrapy框架爬取51job职位和分析

    一、爬取数据 Python版本是3.6,爬取后保存在MySQL中,版本是5.5。 51job搜索位置的链接是【数据...

  • Python 爬虫入门课作业1- 获取网络数据的原理

    课堂作业 要爬取的数据类别 对应的数据源网站 爬取数据的URL 数据筛选规则(选做) 学习python,想研究一些...

网友评论

      本文标题:python爬取jquery数据

      本文链接:https://www.haomeiwen.com/subject/hgpkcctx.html