爬虫02-打造世界地图

这篇博客介绍了如何通过视频学习,动手打造一个爬虫项目,目标是抓取并构建世界地图的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import requests
import json
from pyecharts.charts import Map,Geo
import jsonpath
from pyecharts import options as  opts



# 1.动态加载,所以找到 ranklist
base_url = 'https://api.inews.qq.com/newsqa/v1/automation/foreign/country/ranklist'
headers = {
   
   
        'User-Agent': "User-Agent:Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0"
    }


# 2.发送请求,requests,模拟浏览器发送请求,获取相应数据
response = requests.post(url=base_url,headers=headers).text


# 3.解析数据,数据为json格式,loads将json转变为字典类型
data = json.loads(response)

# JsonPath 表达式是用类似于XPath 在 XML 文档中的定位,来检索设置 Json。JsonPath 中的“根成员对象”总是被引用为 $,
# 不管它是对象还是数组。表达式可以接受“点表达式”,..为递归搜索
name = jsonpath.jsonpath(data,"$..name")
confirm = jsonpath.jsonpath(data,"$..confirm")

# 将国家和确诊人数对应
datas = list(zip(name,confirm))
print(datas)

# 4.处理数据,数据可视化 matplotlib 和 pyecharts
# 中英文国家名称对应,pyecharts在全世界地图上,国家名称为英文,所以设置一个nameMap
nameMap = {
   
   
        'Singapore Rep.':'新加坡',
        'Dominican Rep.':'多米尼加',
        'Palestine':'巴勒斯坦',
        'Bahamas':'巴哈马',
        'Timor-Leste':'东帝汶',
        'Afghanistan':'阿富汗',
        'Guinea-Bissau':'几内亚比绍',
        "Côte d'Ivoire":'科特迪瓦',
        'Siachen Glacier':'锡亚琴冰川',
        "Br. Indian Ocean Ter.":'英属印度洋领土',
        'Angola':'安哥拉',
        'Albania':'阿尔巴尼亚',
        'United Arab Emirates':'阿联酋',
        'Argentina':'阿根廷',
        'Armenia':'亚美尼亚',
        'French Southern and Antarctic Lands':'法属南半球和南极领地',
        'Australia':'澳大利亚',
        'Austria':'奥地利',
        'Azerbaijan':'阿塞拜疆',
        'Burundi':'布隆迪',
        'Belgium':'比利时',
        'Benin':'贝宁',
        'Burkina Faso':'布基纳法索',
        'Bangladesh':'孟加拉国',
        'Bulgaria':'保加利亚'
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值