Google地图瓦片爬虫——进阶版

embedded/2025/2/7 16:24:31/

紧接上一篇——Google地图瓦片爬虫

clash节点自动切换

为了防止一个IP地址访问频率过快问题,自动切换clash的节点

def change_node(is_stop):while True:_r = requests.get("http://127.0.0.1:11053/proxies", headers=clash_headers, verify=False)# 这里匹配Lv开头的节点proxy_list = [proxy for proxy in _r.json()["proxies"]["XXX"]["all"] if proxy.startswith("Lv")]proxy = random.choice(proxy_list)payload = json.dumps({"name": proxy})# XXX替换为自己的分组名称requests.put("http://127.0.0.1:11053/proxies/XXX", headers=clash_headers, data=payload, verify=False)time.sleep(5)if is_stop.value:print("Finished.")break

多进程爬虫

  • get_tile:用于爬取瓦片
  • write_to_db:用于写入数据库
  • change_node:用于切换clash节点
def main():is_stop = multiprocessing.Value("I", 0)db_path, db_name, tile_list = init_db()total = len(tile_list)print(total)# 创建任务队列data_queue = Queue()process_list = []p_number = 10step = total // p_number + 1for i in range(p_number + 1):process_list.append(Process(target=get_tile, args=(data_queue, db_path, db_name, tile_list[i * step:(i + 1) * step],)))process_list.append(Process(target=write_to_db, args=(data_queue, db_path, total, is_stop)))process_list.append(Process(target=change_node, args=(is_stop,)))for p in process_list:p.start()for p in process_list:p.join()

完整程序

下载地址:https://download.csdn.net/download/this_is_id/90343579


http://www.ppmy.cn/embedded/160343.html

相关文章

deepseek接入pycharm 进行AI编程

要将DeepSeek接入PyCharm进行AI编程,可以按照以下步骤操作: ### 1. 获取DeepSeek API访问权限 DeepSeek通常以API的形式对外提供服务,你需要在其官方网站注册账号,申请API访问权限。在申请通过后,会获得API密钥(API Key),这是后续调用API的关键凭证。 ### 2. 安装必要…

动手学图神经网络(10):利用 PyTorch Geometric 进行图分类

利用 PyTorch Geometric 进行图分类 本文将详细介绍如何使用 PyTorch Geometric 库进行图分类任务,同时结合 Weights & Biases(W&B)工具对实验进行跟踪和可视化。 环境设置 首先, 需要安装一些必要的库,包括 PyTorch Geometric 用于实现图神经网络,plotly 用于…

redis之RDB持久化过程

redis的rdb持久化过程 流程图就想表达两点: 1.主进程会fork一个子进程,子进程共享主进程内存数据(fork其实是复制页表),子进程读取数据并写到新的rdb文件,最后替换旧的rdb文件。 2.在持久化过程中主进程接收到用户写操作&#x…

DeepSeek最新图像模型Janus-Pro论文阅读

目录 论文总结 摘要 1. 引言 2. 方法 2.1 架构 2.2 优化的训练策略 2.4 模型扩展 3. 实验 3.1 实施细节 3.2 评估设置 3.3 与最新技术的比较 3.4 定性结果 4. 结论 论文总结 Janus-Pro是DeepSeek最新开源的图像理解生成模型,Janus-Pro在多模态理解和文…

用python制作李询李询同款爱心

import random from math import sin, cos, pi, log from tkinter import *CANVAS_WIDTH 980 # 画布的宽 CANVAS_HEIGHT 720 # 画布的高 CANVAS_CENTER_X CANVAS_WIDTH / 2 # 画布中心的X轴坐标 CANVAS_CENTER_Y CANVAS_HEIGHT / 2 # 画布中心的Y轴坐标 IMAGE_ENLARGE …

树及其二叉树结构阐述(C语言)

文章目录 树的概念及其结构树的概念现实中的二叉树树的相关概念树的表示树在实际中的应用 二叉树的概念及其结构概念现实世界中的二叉树特殊的二叉树满二叉树完全二叉树 二叉树的性质二叉树的存储结构顺序存储链式存储二叉链三叉链 树的概念及其结构 树的概念 树是一种非线性…

朴素贝叶斯算法相关文献

朴素贝叶斯是一种基于概率的简单但强大的分类算法。尽管其“朴素”假设(特征之间相互独立)在现实中往往不成立,但在许多实际应用中,它依然表现出色,尤其是在文本分类、垃圾邮件过滤和情感分析等领域。近年来&#xff0…

【multi-agent-system】ubuntu24.04 安装uv python包管理器及安装依赖

uv包管理器是跨平台的 参考sudo apt-get update sudo apt-get install -y build-essential我的开发环境是ubuntu24.04 (base) root@k8s-master-pfsrv:/home/zhangbin/perfwork/01_ai/08_multi-agent-system# uv venv 找不到命令 “uv”,但可以通过以下软件