使用Python获取建筑网站数据,进行可视化分析,并实现网站JS解密

哈喽兄弟们,今天来实现一下建筑市场公共服务平台的数据采集,顺便实现一下网站的JS解密。

话不多说,我们直接开始今天的内容。

首先我们需要准备这些

环境使用

  • Python 3.8
  • Pycharm

模块使用

  • requests --> pip install requests
  • execjs --> pip install PyExecJS
  • json

爬虫基本流程思路

一. 数据来源分析

1. 明确需求: 明确采集的网站以及数据内容
    - 网址: https://****.gov.cn/data/company
    - 数据: 企业信息

初学者同学: 浏览器导航栏上面链接是什么, 请求什么链接

2. 抓包分析: 通过浏览器去分析, 我们需要数据具体在那个链接中
    - 静态网页: 刷新网页查看数据包内
    - 动态网页: 点击到下一页数据内容 / 下滑到下一页的数据内容
    * 打开开发者工具: F12
    * 点击第二页数据内容
    加密数据: https:/******.gov.cn/APi/webApi/dataservice/query/comp/list?pg=1&pgsz=15&total=450

二. 代码实现步骤

1. 发送请求 -> 模拟浏览器对于url地址发送请求
    url地址: 通过抓包分析找到链接地址
2. 获取数据 -> 获取服务器返回响应数据
    开发者工具: response 响应
3. 解析数据 -> 获取加密数据内容
4. 保存数据 -> 通过解密, 还原明文数据 保存表格文件中

爬虫部分代码

# 导入数据请求模块 
import requests
# 导入模块
import execjs
# 导入json模块
import json
# 导入csv模块
import csv

# 创建文件对象
csv_file = open('data.csv', mode='w', encoding='utf-8', newline='')
csv_writer = csv.DictWriter(csv_file, fieldnames=[
    '企业名称',
    '统一社会信用代码',
    '法人',
    '注册属地省份',
    '注册属地城市',
])
csv_writer.writeheader()
# 模拟浏览器
headers = {
   
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36'
}
for page in range(30):
    # 请求链接
    url = f'https://****网址都屏蔽了**不然你看不到这篇文章***.cn/APi/webApi/dataservice/query/comp/list?pg={
     
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值