This commit is contained in:
27942
2026-01-16 09:54:02 +08:00
parent 08450d85b2
commit 186d5ff133
1061 changed files with 137634 additions and 714 deletions

316
HTTPS配置指南.md Normal file
View File

@@ -0,0 +1,316 @@
# 微信小程序 HTTPS 后端接口配置指南
## 一、准备工作
### 1. 确认您已有:
- ✅ 域名(已备案,如果使用国内服务器)
- ✅ 服务器(云服务器,如阿里云、腾讯云等)
- ✅ 后端代码Flask/FastAPI/Django 等)
## 二、获取 SSL 证书
### 方案一:免费证书(推荐)
#### 1. 使用 Let's Encrypt免费3个月有效期可自动续期
**安装 Certbot**
```bash
# Ubuntu/Debian
sudo apt-get update
sudo apt-get install certbot
# CentOS
sudo yum install certbot
```
**获取证书:**
```bash
# 方式1自动验证需要80端口开放
sudo certbot certonly --standalone -d yourdomain.com -d www.yourdomain.com
# 方式2手动验证如果80端口被占用
sudo certbot certonly --manual -d yourdomain.com
```
**证书位置:**
- 证书文件:`/etc/letsencrypt/live/yourdomain.com/fullchain.pem`
- 私钥文件:`/etc/letsencrypt/live/yourdomain.com/privkey.pem`
#### 2. 使用阿里云/腾讯云免费证书
**阿里云:**
1. 登录阿里云控制台
2. 进入「SSL证书」→「免费证书」
3. 申请证书,填写域名信息
4. 完成DNS验证或文件验证
5. 下载证书(选择对应服务器类型)
**腾讯云:**
1. 登录腾讯云控制台
2. 进入「SSL证书」→「我的证书」→「申请免费证书」
3. 填写域名信息并验证
4. 下载证书
### 方案二:付费证书
- 阿里云、腾讯云、华为云等都有付费证书服务
- 通常提供1年有效期自动续期服务
## 三、配置后端服务器
### Flask 示例
```python
from flask import Flask, jsonify
from flask_cors import CORS
import ssl
app = Flask(__name__)
CORS(app) # 允许跨域请求
@app.route('/api/test', methods=['GET'])
def test():
return jsonify({'message': 'Hello from HTTPS API'})
if __name__ == '__main__':
# 使用 SSL 证书启动
context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER)
context.load_cert_chain(
'/etc/letsencrypt/live/yourdomain.com/fullchain.pem',
'/etc/letsencrypt/live/yourdomain.com/privkey.pem'
)
app.run(
host='0.0.0.0',
port=443,
ssl_context=context,
debug=False
)
```
### FastAPI 示例
```python
from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
import uvicorn
app = FastAPI()
# 配置 CORS允许微信小程序访问
app.add_middleware(
CORSMiddleware,
allow_origins=["*"], # 生产环境建议指定域名
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
@app.get("/api/test")
async def test():
return {"message": "Hello from HTTPS API"}
if __name__ == "__main__":
uvicorn.run(
app,
host="0.0.0.0",
port=443,
ssl_keyfile="/etc/letsencrypt/live/yourdomain.com/privkey.pem",
ssl_certfile="/etc/letsencrypt/live/yourdomain.com/fullchain.pem"
)
```
### 使用 Nginx 反向代理(推荐)
**安装 Nginx**
```bash
# Ubuntu/Debian
sudo apt-get install nginx
# CentOS
sudo yum install nginx
```
**配置 Nginx**
编辑 `/etc/nginx/sites-available/default` 或创建新配置文件:
```nginx
server {
listen 80;
server_name yourdomain.com www.yourdomain.com;
# 重定向 HTTP 到 HTTPS
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl http2;
server_name yourdomain.com www.yourdomain.com;
# SSL 证书配置
ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
# SSL 优化配置
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
# 反向代理到后端应用
location / {
proxy_pass http://127.0.0.1:8000; # 您的后端应用端口
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
# API 接口
location /api/ {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
```
**测试并重启 Nginx**
```bash
sudo nginx -t # 测试配置
sudo systemctl restart nginx # 重启服务
```
## 四、域名解析配置
### 1. 添加 A 记录
在您的域名 DNS 管理后台添加:
- **记录类型**A
- **主机记录**@ 或 www
- **记录值**:您的服务器公网 IP
- **TTL**600或默认
### 2. 验证解析
```bash
# 检查域名解析
ping yourdomain.com
nslookup yourdomain.com
```
## 五、防火墙配置
### 开放必要端口
```bash
# Ubuntu/Debian (ufw)
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 22/tcp # SSH
sudo ufw enable
# CentOS (firewalld)
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
```
## 六、微信小程序配置
### 1. 在小程序后台配置服务器域名
1. 登录[微信公众平台](https://mp.weixin.qq.com/)
2. 进入「开发」→「开发管理」→「开发设置」
3. 在「服务器域名」中配置:
- **request合法域名**`https://yourdomain.com`
- **uploadFile合法域名**`https://yourdomain.com`(如果需要上传文件)
- **downloadFile合法域名**`https://yourdomain.com`(如果需要下载文件)
### 2. 小程序代码示例
```javascript
// app.js 或页面中
wx.request({
url: 'https://yourdomain.com/api/test',
method: 'GET',
header: {
'content-type': 'application/json'
},
success: function(res) {
console.log(res.data);
},
fail: function(err) {
console.error(err);
}
});
```
## 七、证书自动续期Let's Encrypt
Let's Encrypt 证书有效期3个月需要设置自动续期
```bash
# 测试续期
sudo certbot renew --dry-run
# 设置自动续期crontab
sudo crontab -e
# 添加以下行每月1号凌晨3点检查续期
0 3 1 * * certbot renew --quiet && systemctl reload nginx
```
## 八、常见问题
### 1. 证书验证失败
- 确保域名已正确解析到服务器
- 确保80端口开放Let's Encrypt验证需要
- 检查防火墙设置
### 2. 小程序无法访问接口
- 检查域名是否在小程序后台配置
- 确认接口返回的 Content-Type 正确
- 检查服务器 CORS 配置
### 3. 证书过期
- 设置自动续期任务
- 定期检查证书有效期:`sudo certbot certificates`
### 4. 混合内容错误
- 确保所有资源都使用 HTTPS
- 检查 API 返回的链接是否为 HTTPS
## 九、安全建议
1. **使用强密码和密钥**
2. **定期更新系统和依赖**
3. **配置适当的 CORS 策略**(生产环境不要使用 `allow_origins=["*"]`
4. **使用 HTTPS 强制重定向**
5. **配置安全响应头**HSTS 等)
6. **定期备份证书和配置**
## 十、测试 HTTPS
```bash
# 使用 curl 测试
curl https://yourdomain.com/api/test
# 使用浏览器访问
# https://yourdomain.com/api/test
# 检查 SSL 配置
# https://www.ssllabs.com/ssltest/analyze.html?d=yourdomain.com
```
---
## 快速检查清单
- [ ] 域名已解析到服务器 IP
- [ ] SSL 证书已获取并配置
- [ ] 后端服务已配置 HTTPS
- [ ] 防火墙端口已开放80, 443
- [ ] Nginx 配置正确并重启
- [ ] 小程序后台已配置服务器域名
- [ ] 测试接口可以正常访问
- [ ] 证书自动续期已配置
完成以上步骤后,您的微信小程序就可以通过 HTTPS 访问后端接口了!

157
README_HTTPS.md Normal file
View File

@@ -0,0 +1,157 @@
# 快速开始 - HTTPS 后端配置
## 一、安装依赖
```bash
pip install -r requirements_https.txt
```
## 二、获取 SSL 证书
### 最简单的方式 - 使用 Let's Encrypt
```bash
# 1. 安装 certbot
sudo apt-get install certbot # Ubuntu/Debian
# 或
sudo yum install certbot # CentOS
# 2. 获取证书确保80端口开放
sudo certbot certonly --standalone -d yourdomain.com -d www.yourdomain.com
# 证书将保存在:
# /etc/letsencrypt/live/yourdomain.com/fullchain.pem
# /etc/letsencrypt/live/yourdomain.com/privkey.pem
```
## 三、配置域名解析
在您的域名管理后台添加 A 记录:
- 主机记录:@ 或 www
- 记录类型A
- 记录值:您的服务器公网 IP
## 四、运行服务器
### 方式一:直接运行 Python开发测试
```bash
# 设置环境变量
export SSL_CERT=/etc/letsencrypt/live/yourdomain.com/fullchain.pem
export SSL_KEY=/etc/letsencrypt/live/yourdomain.com/privkey.pem
# 运行 Flask 版本
python https_server_example.py
# 或运行 FastAPI 版本
export FRAMEWORK=fastapi
python https_server_example.py
```
### 方式二:使用 Nginx 反向代理(生产环境推荐)
1. **安装 Nginx**
```bash
sudo apt-get install nginx
```
2. **配置 Nginx**
编辑 `/etc/nginx/sites-available/default`
```nginx
server {
listen 80;
server_name yourdomain.com;
return 301 https://$server_name$request_uri;
}
server {
listen 443 ssl;
server_name yourdomain.com;
ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
```
3. **启动服务**
```bash
# 启动后端HTTP端口8000
python https_server_example.py
# 重启 Nginx
sudo systemctl restart nginx
```
## 五、配置微信小程序
1. 登录[微信公众平台](https://mp.weixin.qq.com/)
2. 进入「开发」→「开发管理」→「开发设置」
3. 配置服务器域名:
- **request合法域名**`https://yourdomain.com`
## 六、测试接口
```bash
# 测试 HTTPS 接口
curl https://yourdomain.com/api/test
# 测试登录接口
curl -X POST https://yourdomain.com/api/user/login \
-H "Content-Type: application/json" \
-d '{"username":"test","password":"123456"}'
```
## 七、小程序调用示例
```javascript
// 在小程序中调用
wx.request({
url: 'https://yourdomain.com/api/test',
method: 'GET',
success: function(res) {
console.log(res.data);
},
fail: function(err) {
console.error('请求失败', err);
}
});
```
## 常见问题
### 1. 证书文件找不到
- 检查证书路径是否正确
- 确认证书文件权限:`sudo chmod 644 /etc/letsencrypt/live/yourdomain.com/*.pem`
### 2. 端口被占用
- 检查端口占用:`sudo netstat -tulpn | grep :443`
- 或使用 Nginx 反向代理,后端运行在 8000 端口
### 3. 小程序无法访问
- 确认域名已在小程序后台配置
- 检查服务器防火墙是否开放 443 端口
- 确认域名已正确解析
### 4. 证书过期
Let's Encrypt 证书3个月有效期设置自动续期
```bash
sudo crontab -e
# 添加0 3 1 * * certbot renew --quiet && systemctl reload nginx
```
## 安全建议
1. ✅ 使用 Nginx 反向代理(更安全、更稳定)
2. ✅ 生产环境配置具体的 CORS 域名
3. ✅ 定期更新证书
4. ✅ 使用环境变量管理敏感信息
5. ✅ 配置防火墙规则

383
gui_config.py Normal file
View File

@@ -0,0 +1,383 @@
import sys
import threading
from PyQt5.QtWidgets import (QApplication, QMainWindow, QWidget, QVBoxLayout,
QHBoxLayout, QTableWidget, QTableWidgetItem,
QPushButton, QLineEdit, QLabel, QDateTimeEdit,
QHeaderView, QMessageBox, QCheckBox, QTextEdit)
from PyQt5.QtCore import Qt, QDateTime, pyqtSignal, QThread
from PyQt5.QtGui import QColor
from 自动化 import Pdd
class TaskThread(QThread):
"""任务执行线程"""
status_update = pyqtSignal(int, str) # 行号, 状态消息
def __init__(self, row, url, user_id, time_start):
super().__init__()
self.row = row
self.url = url
self.user_id = user_id
self.time_start = time_start
self.is_running = True
def run(self):
try:
self.status_update.emit(self.row, "正在初始化...")
pdd = Pdd(
url=self.url,
user_id=self.user_id,
time_start=self.time_start if self.time_start else None,
)
if not self.is_running:
return
self.status_update.emit(self.row, "正在执行任务...")
pdd.action()
if self.is_running:
self.status_update.emit(self.row, "完成")
except Exception as e:
if self.is_running:
self.status_update.emit(self.row, f"错误: {str(e)}")
def stop(self):
self.is_running = False
class ConfigGUI(QMainWindow):
def __init__(self):
super().__init__()
self.task_threads = {} # 存储任务线程 {row: thread}
self.init_ui()
def init_ui(self):
self.setWindowTitle("自动化任务配置工具")
self.setGeometry(100, 100, 1200, 700)
# 主窗口部件
main_widget = QWidget()
self.setCentralWidget(main_widget)
main_layout = QVBoxLayout()
main_widget.setLayout(main_layout)
# 输入区域
input_layout = QHBoxLayout()
# URL输入
url_label = QLabel("URL:")
self.url_input = QLineEdit()
self.url_input.setPlaceholderText("请输入小红书链接")
input_layout.addWidget(url_label)
input_layout.addWidget(self.url_input)
# User ID输入
user_id_label = QLabel("User ID:")
self.user_id_input = QLineEdit()
self.user_id_input.setPlaceholderText("请输入用户ID")
input_layout.addWidget(user_id_label)
input_layout.addWidget(self.user_id_input)
# 定时发布时间输入
time_label = QLabel("定时发布时间:")
self.time_input = QDateTimeEdit()
self.time_input.setDateTime(QDateTime.currentDateTime())
self.time_input.setDisplayFormat("yyyy-MM-dd HH:mm:ss")
self.time_input.setCalendarPopup(True)
input_layout.addWidget(time_label)
input_layout.addWidget(self.time_input)
# 添加按钮
add_btn = QPushButton("添加任务")
add_btn.clicked.connect(self.add_task)
input_layout.addWidget(add_btn)
main_layout.addLayout(input_layout)
# 任务列表表格
self.table = QTableWidget()
self.table.setColumnCount(6)
self.table.setHorizontalHeaderLabels(["选择", "URL", "User ID", "定时发布时间", "状态", "操作"])
self.table.horizontalHeader().setStretchLastSection(True)
self.table.setSelectionBehavior(QTableWidget.SelectRows)
self.table.setEditTriggers(QTableWidget.NoEditTriggers)
# 设置列宽
header = self.table.horizontalHeader()
header.setSectionResizeMode(0, QHeaderView.ResizeToContents) # 选择列
header.setSectionResizeMode(1, QHeaderView.Stretch) # URL列
header.setSectionResizeMode(2, QHeaderView.ResizeToContents) # User ID列
header.setSectionResizeMode(3, QHeaderView.ResizeToContents) # 时间列
header.setSectionResizeMode(4, QHeaderView.ResizeToContents) # 状态列
header.setSectionResizeMode(5, QHeaderView.ResizeToContents) # 操作列
main_layout.addWidget(self.table)
# 操作按钮区域
button_layout = QHBoxLayout()
# 全选/取消全选
select_all_btn = QPushButton("全选")
select_all_btn.clicked.connect(self.select_all)
button_layout.addWidget(select_all_btn)
deselect_all_btn = QPushButton("取消全选")
deselect_all_btn.clicked.connect(self.deselect_all)
button_layout.addWidget(deselect_all_btn)
button_layout.addStretch()
# 删除选中
delete_btn = QPushButton("删除选中")
delete_btn.clicked.connect(self.delete_selected)
button_layout.addWidget(delete_btn)
# 运行选中
run_btn = QPushButton("运行选中任务")
run_btn.setStyleSheet("background-color: #4CAF50; color: white; font-weight: bold;")
run_btn.clicked.connect(self.run_selected)
button_layout.addWidget(run_btn)
# 停止所有
stop_all_btn = QPushButton("停止所有任务")
stop_all_btn.setStyleSheet("background-color: #f44336; color: white; font-weight: bold;")
stop_all_btn.clicked.connect(self.stop_all)
button_layout.addWidget(stop_all_btn)
main_layout.addLayout(button_layout)
# 日志区域
log_label = QLabel("运行日志:")
main_layout.addWidget(log_label)
self.log_text = QTextEdit()
self.log_text.setReadOnly(True)
self.log_text.setMaximumHeight(150)
main_layout.addWidget(self.log_text)
def add_task(self):
url = self.url_input.text().strip()
user_id = self.user_id_input.text().strip()
time_str = self.time_input.dateTime().toString("yyyy-MM-dd HH:mm:ss")
if not url:
QMessageBox.warning(self, "警告", "请输入URL")
return
if not user_id:
QMessageBox.warning(self, "警告", "请输入User ID")
return
# 添加行
row = self.table.rowCount()
self.table.insertRow(row)
# 复选框
checkbox = QCheckBox()
checkbox.setChecked(True)
self.table.setCellWidget(row, 0, checkbox)
# URL
url_item = QTableWidgetItem(url)
url_item.setTextAlignment(Qt.AlignLeft | Qt.AlignVCenter)
self.table.setItem(row, 1, url_item)
# User ID
user_id_item = QTableWidgetItem(user_id)
user_id_item.setTextAlignment(Qt.AlignCenter)
self.table.setItem(row, 2, user_id_item)
# 定时发布时间
time_item = QTableWidgetItem(time_str)
time_item.setTextAlignment(Qt.AlignCenter)
self.table.setItem(row, 3, time_item)
# 状态
status_item = QTableWidgetItem("待运行")
status_item.setTextAlignment(Qt.AlignCenter)
status_item.setForeground(QColor(128, 128, 128))
self.table.setItem(row, 4, status_item)
# 操作按钮
delete_btn = QPushButton("删除")
delete_btn.clicked.connect(lambda: self.delete_row(row))
self.table.setCellWidget(row, 5, delete_btn)
# 清空输入框
self.url_input.clear()
self.user_id_input.clear()
self.log(f"已添加任务: User ID={user_id}, URL={url[:50]}...")
def delete_row(self, row):
# 如果任务正在运行,先停止
if row in self.task_threads:
self.stop_task(row)
self.table.removeRow(row)
# 更新后续行的引用
self.update_row_references(row)
def update_row_references(self, deleted_row):
"""更新删除行之后的所有行的引用"""
new_threads = {}
for old_row, thread in self.task_threads.items():
if old_row < deleted_row:
new_threads[old_row] = thread
elif old_row > deleted_row:
new_threads[old_row - 1] = thread
self.task_threads = new_threads
# 更新删除按钮的连接
for row in range(self.table.rowCount()):
delete_btn = self.table.cellWidget(row, 5)
if delete_btn:
delete_btn.clicked.disconnect()
delete_btn.clicked.connect(lambda checked, r=row: self.delete_row(r))
def select_all(self):
for row in range(self.table.rowCount()):
checkbox = self.table.cellWidget(row, 0)
if checkbox:
checkbox.setChecked(True)
def deselect_all(self):
for row in range(self.table.rowCount()):
checkbox = self.table.cellWidget(row, 0)
if checkbox:
checkbox.setChecked(False)
def delete_selected(self):
rows_to_delete = []
for row in range(self.table.rowCount()):
checkbox = self.table.cellWidget(row, 0)
if checkbox and checkbox.isChecked():
rows_to_delete.append(row)
# 从后往前删除,避免索引变化
for row in sorted(rows_to_delete, reverse=True):
self.delete_row(row)
if rows_to_delete:
self.log(f"已删除 {len(rows_to_delete)} 个任务")
def get_selected_rows(self):
"""获取选中的行号列表"""
selected_rows = []
for row in range(self.table.rowCount()):
checkbox = self.table.cellWidget(row, 0)
if checkbox and checkbox.isChecked():
selected_rows.append(row)
return selected_rows
def run_selected(self):
selected_rows = self.get_selected_rows()
if not selected_rows:
QMessageBox.warning(self, "警告", "请至少选择一个任务")
return
# 检查是否有任务正在运行
running_count = sum(1 for row in selected_rows if row in self.task_threads)
if running_count > 0:
QMessageBox.warning(self, "警告", "选中的任务中有正在运行的,请先停止")
return
# 启动选中的任务
for row in selected_rows:
url = self.table.item(row, 1).text()
user_id = self.table.item(row, 2).text()
time_str = self.table.item(row, 3).text()
# 更新状态
status_item = self.table.item(row, 4)
status_item.setText("运行中")
status_item.setForeground(QColor(255, 165, 0))
# 创建并启动线程
thread = TaskThread(row, url, user_id, time_str)
thread.status_update.connect(self.update_status)
thread.start()
self.task_threads[row] = thread
self.log(f"开始运行任务 {row+1}: User ID={user_id}")
def update_status(self, row, status):
"""更新任务状态"""
if row >= self.table.rowCount():
return
status_item = self.table.item(row, 4)
if status_item:
status_item.setText(status)
if "完成" in status:
status_item.setForeground(QColor(0, 128, 0))
elif "错误" in status:
status_item.setForeground(QColor(255, 0, 0))
elif "运行中" in status or "正在" in status:
status_item.setForeground(QColor(255, 165, 0))
else:
status_item.setForeground(QColor(128, 128, 128))
# 如果任务完成或出错,从线程字典中移除
if "完成" in status or "错误" in status:
if row in self.task_threads:
del self.task_threads[row]
def stop_task(self, row):
"""停止指定行的任务"""
if row in self.task_threads:
thread = self.task_threads[row]
thread.stop()
thread.wait()
del self.task_threads[row]
status_item = self.table.item(row, 4)
if status_item:
status_item.setText("已停止")
status_item.setForeground(QColor(128, 128, 128))
self.log(f"已停止任务 {row+1}")
def stop_all(self):
"""停止所有正在运行的任务"""
rows_to_stop = list(self.task_threads.keys())
for row in rows_to_stop:
self.stop_task(row)
if rows_to_stop:
self.log(f"已停止 {len(rows_to_stop)} 个任务")
def log(self, message):
"""添加日志"""
from datetime import datetime
timestamp = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
self.log_text.append(f"[{timestamp}] {message}")
def closeEvent(self, event):
"""窗口关闭时停止所有任务"""
if self.task_threads:
reply = QMessageBox.question(
self,
"确认",
"有任务正在运行,确定要关闭吗?",
QMessageBox.Yes | QMessageBox.No,
QMessageBox.No
)
if reply == QMessageBox.Yes:
self.stop_all()
event.accept()
else:
event.ignore()
else:
event.accept()
if __name__ == '__main__':
app = QApplication(sys.argv)
window = ConfigGUI()
window.show()
sys.exit(app.exec_())

BIN
haha.xlsx Normal file

Binary file not shown.

202
https_server_example.py Normal file
View File

@@ -0,0 +1,202 @@
"""
微信小程序 HTTPS 后端服务器示例
支持 Flask 和 FastAPI 两种框架
"""
# ==================== Flask 版本 ====================
from flask import Flask, jsonify, request
from flask_cors import CORS
import ssl
import os
app = Flask(__name__)
# 配置 CORS允许微信小程序访问
CORS(app, resources={
r"/api/*": {
"origins": "*", # 生产环境建议指定具体域名
"methods": ["GET", "POST", "PUT", "DELETE", "OPTIONS"],
"allow_headers": ["Content-Type", "Authorization"]
}
})
@app.route('/api/test', methods=['GET'])
def test():
"""测试接口"""
return jsonify({
'code': 200,
'message': 'HTTPS 接口测试成功',
'data': {
'timestamp': request.headers.get('X-Request-Time', ''),
'user_agent': request.headers.get('User-Agent', '')
}
})
@app.route('/api/user/login', methods=['POST'])
def login():
"""登录接口示例"""
data = request.get_json()
username = data.get('username', '')
password = data.get('password', '')
# 这里添加您的登录逻辑
if username and password:
return jsonify({
'code': 200,
'message': '登录成功',
'data': {
'token': 'example_token_12345',
'user_id': 1
}
})
else:
return jsonify({
'code': 400,
'message': '用户名或密码不能为空'
}), 400
@app.route('/api/health', methods=['GET'])
def health():
"""健康检查接口"""
return jsonify({
'status': 'healthy',
'service': 'wechat-miniprogram-api'
})
def run_flask_server():
"""运行 Flask HTTPS 服务器"""
# SSL 证书路径(根据您的实际情况修改)
cert_file = os.getenv('SSL_CERT', '/etc/letsencrypt/live/yourdomain.com/fullchain.pem')
key_file = os.getenv('SSL_KEY', '/etc/letsencrypt/live/yourdomain.com/privkey.pem')
# 检查证书文件是否存在
if not os.path.exists(cert_file) or not os.path.exists(key_file):
print(f"警告:证书文件不存在!")
print(f"证书路径: {cert_file}")
print(f"私钥路径: {key_file}")
print("请先配置 SSL 证书,或使用 Nginx 反向代理")
# 开发环境可以运行 HTTP仅用于测试
app.run(host='0.0.0.0', port=8000, debug=True)
return
# 配置 SSL
context = ssl.SSLContext(ssl.PROTOCOL_TLS_SERVER)
context.load_cert_chain(cert_file, key_file)
print("启动 Flask HTTPS 服务器...")
print(f"访问地址: https://yourdomain.com/api/test")
app.run(
host='0.0.0.0',
port=443,
ssl_context=context,
debug=False # 生产环境设为 False
)
# ==================== FastAPI 版本 ====================
try:
from fastapi import FastAPI, Request
from fastapi.middleware.cors import CORSMiddleware
from fastapi.responses import JSONResponse
import uvicorn
fastapi_app = FastAPI(title="微信小程序 API", version="1.0.0")
# 配置 CORS
fastapi_app.add_middleware(
CORSMiddleware,
allow_origins=["*"], # 生产环境建议指定具体域名
allow_credentials=True,
allow_methods=["*"],
allow_headers=["*"],
)
@fastapi_app.get("/api/test")
async def test_api(request: Request):
"""测试接口"""
return {
'code': 200,
'message': 'HTTPS 接口测试成功',
'data': {
'timestamp': request.headers.get('x-request-time', ''),
'user_agent': request.headers.get('user-agent', '')
}
}
@fastapi_app.post("/api/user/login")
async def login_api(data: dict):
"""登录接口示例"""
username = data.get('username', '')
password = data.get('password', '')
if username and password:
return {
'code': 200,
'message': '登录成功',
'data': {
'token': 'example_token_12345',
'user_id': 1
}
}
else:
return JSONResponse(
status_code=400,
content={
'code': 400,
'message': '用户名或密码不能为空'
}
)
@fastapi_app.get("/api/health")
async def health_check():
"""健康检查接口"""
return {
'status': 'healthy',
'service': 'wechat-miniprogram-api'
}
def run_fastapi_server():
"""运行 FastAPI HTTPS 服务器"""
cert_file = os.getenv('SSL_CERT', '/etc/letsencrypt/live/yourdomain.com/fullchain.pem')
key_file = os.getenv('SSL_KEY', '/etc/letsencrypt/live/yourdomain.com/privkey.pem')
if not os.path.exists(cert_file) or not os.path.exists(key_file):
print(f"警告:证书文件不存在!")
print(f"证书路径: {cert_file}")
print(f"私钥路径: {key_file}")
print("请先配置 SSL 证书,或使用 Nginx 反向代理")
# 开发环境可以运行 HTTP仅用于测试
uvicorn.run(fastapi_app, host="0.0.0.0", port=8000)
return
print("启动 FastAPI HTTPS 服务器...")
print(f"访问地址: https://yourdomain.com/api/test")
uvicorn.run(
fastapi_app,
host="0.0.0.0",
port=443,
ssl_keyfile=key_file,
ssl_certfile=cert_file
)
except ImportError:
print("FastAPI 未安装,跳过 FastAPI 示例")
print("安装命令: pip install fastapi uvicorn")
# ==================== 主程序 ====================
if __name__ == '__main__':
import sys
# 选择框架:'flask' 或 'fastapi'
framework = os.getenv('FRAMEWORK', 'flask').lower()
if framework == 'fastapi':
try:
run_fastapi_server()
except NameError:
print("FastAPI 未安装,使用 Flask")
run_flask_server()
else:
run_flask_server()

File diff suppressed because one or more lines are too long

View File

@@ -1,11 +1,15 @@
[
{
"name": "haha",
"url": "https://www.xiaohongshu.com/explore/623d36d70000000001026733?xsec_token=ABhhM2ncuuuXOXUkG3YWI5ygMg2uLj9K1IYSxXyKARs3E=&xsec_source=pc_user",
"user_id": "1050100241",
"time_start": "2026-01-28 09:56:10",
"file_path": "C:/Users/27942/Desktop/haha11",
"topics": "python-haha",
"interval": "2",
"creator_link": "https://www.xiaohongshu.com/explore/694d5080000000001d03c266?xsec_token=ABdCdLrjMkmGbv623XZvEinqYbvCUS-J24yN2KCNaloJU=&xsec_source=pc_user",
"count": "4",
"note": "haha",
"time_start": null,
"enabled": true,
"status": "成功",
"last_run": "2026-01-15 11:16:16"
"status": "运行中",
"last_run": "2026-01-15 21:44:36"
}
]

1
pdd_tasks.json.backup Normal file
View File

@@ -0,0 +1 @@
[]

13
requirements_https.txt Normal file
View File

@@ -0,0 +1,13 @@
# 微信小程序 HTTPS 后端依赖
# Flask 版本
Flask==3.0.0
flask-cors==4.0.0
# FastAPI 版本(可选)
fastapi==0.104.1
uvicorn[standard]==0.24.0
# 其他常用依赖
requests==2.31.0
python-dotenv==1.0.0

224
test.py
View File

@@ -1,14 +1,218 @@
from urllib.parse import urlparse
"""
Django settings for django_lanyu project.
Generated by 'django-admin startproject' using Django 4.1.
For more information on this file, see
https://docs.djangoproject.com/en/4.1/topics/settings/
For the full list of settings and their values, see
https://docs.djangoproject.com/en/4.1/ref/settings/
"""
from pathlib import Path
import os
url = "https://sns-video-hw.xhscdn.com/stream/110/258/01e6cd08be6e36ad010370019190eceaac_258.mp4"
# Build paths inside the project like this: BASE_DIR / 'subdir'.
BASE_DIR = Path(__file__).resolve().parent.parent
# 解析URL
parsed_url = urlparse(url)
# 获取路径部分
path = parsed_url.path
# 从路径中提取文件名
filename = os.path.basename(path)
# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/4.1/howto/deployment/checklist/
# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = "django-insecure--+*v2+o0c*d7z3&+!z%&k^!b8w%1myflhkf4doh!12#$xo8)o="
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
ALLOWED_HOSTS = ['*']
# Application definition
INSTALLED_APPS = [
"django.contrib.admin",
"django.contrib.auth",
"django.contrib.contenttypes",
"django.contrib.sessions",
"django.contrib.messages",
"django.contrib.staticfiles",
"corsheaders",
"agent", # 经济人应用
"user",
"operate", # 运营应用
"risk", # 风控
'agent_manage' # 经纪人管理员
]
MIDDLEWARE = [
"django.middleware.security.SecurityMiddleware",
"django.contrib.sessions.middleware.SessionMiddleware",
# "django.middleware.csrf.CsrfViewMiddleware",
"django.contrib.auth.middleware.AuthenticationMiddleware",
"django.contrib.messages.middleware.MessageMiddleware",
"django.middleware.clickjacking.XFrameOptionsMiddleware",
"django_lanyu.middleware.JWTAuthenticationMiddleware",
'corsheaders.middleware.CorsMiddleware',
'django.middleware.common.CommonMiddleware',
]
ROOT_URLCONF = "django_lanyu.urls"
TEMPLATES = [
{
"BACKEND": "django.template.backends.django.DjangoTemplates",
# "DIRS": [BASE_DIR / 'templates']
# ,
"APP_DIRS": True,
"OPTIONS": {
"context_processors": [
"django.template.context_processors.debug",
"django.template.context_processors.request",
"django.contrib.auth.context_processors.auth",
"django.contrib.messages.context_processors.messages",
],
},
},
]
WSGI_APPLICATION = "django_lanyu.wsgi.application"
REST_FRAMEWORK = {
'DEFAULT_RENDERER_CLASSES': [
'rest_framework.renderers.JSONRenderer',
],
}
# Database
# https://docs.djangoproject.com/en/4.1/ref/settings/#databases
# DATABASES = {
# 'default': {
# 'ENGINE': 'django.db.backends.mysql', # 替换为你的数据库引擎,比如 'django.db.engine.mysql'
# 'NAME': 'lanyu', # 你的数据库名称
# 'USER': 'root', # 数据库用户名
# 'PASSWORD': '123456', # 数据库密码
# 'HOST': '127.0.0.1', # 数据库主机地址
# 'PORT': '3306', # 数据库端口
# 'OPTIONS': {
# 'charset': 'utf8mb4',
# },
# }
# }
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # 替换为你的数据库引擎,比如 'django.db.engine.mysql'
'NAME': 'lanyu', # 你的数据库名称
'USER': 'lanyu', # 数据库用户名
'PASSWORD': 'Ly123456.', # 数据库密码
'HOST': '127.0.0.1', # 数据库主机地址
'PORT': '3306', # 数据库端口
'OPTIONS': {
'charset': 'utf8mb4',
},
'POOL_OPTIONS': {
'POOL_SIZE': 5, # 连接池的初始大小
'MAX_OVERFLOW': 10, # 连接池允许的最大额外连接数
'RECYCLE': 3600, # 连接的最大存活时间(秒),超过该时间连接将被回收
}
}
}
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.locmem.LocMemCache',
'LOCATION': 'unique-snowflake',
}
}
# Password validation
# https://docs.djangoproject.com/en/4.1/ref/settings/#auth-password-validators
AUTH_PASSWORD_VALIDATORS = [
{
"NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator",
},
{
"NAME": "django.contrib.auth.password_validation.MinimumLengthValidator",
},
{
"NAME": "django.contrib.auth.password_validation.CommonPasswordValidator",
},
{
"NAME": "django.contrib.auth.password_validation.NumericPasswordValidator",
},
]
# Internationalization
# https://docs.djangoproject.com/en/4.1/topics/i18n/
LANGUAGE_CODE = "en-us"
TIME_ZONE = "UTC"
USE_I18N = True
USE_TZ = True
# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/4.1/howto/static-files/
STATIC_URL = "static/"
# Default primary key field type
# https://docs.djangoproject.com/en/4.1/ref/settings/#default-auto-field
DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField"
CORS_ALLOWED_ORIGINS = [
"http://192.168.0.221",
"http://192.168.0.228",
'http://your-frontend-url',
]
CORS_ALLOW_CREDENTIALS = True
CORS_ALLOW_ALL_ORIGINS = True
CORS_ALLOW_METHODS = [
'DELETE',
'GET',
'OPTIONS',
'PATCH',
'POST',
'PUT',
]
CORS_ALLOW_HEADERS = [
'accept',
'accept-encoding',
'authorization',
'content-type',
'dnt',
'origin',
'user-agent',
'x-csrftoken',
'x-requested-with',
]
APPEND_SLASH = True
# 七牛云存储
QINIU_ACCESS_KEY = 'CB8j8D9voknWUVendxZi4h-LERDfD0XU3IXtSeEu'
QINIU_SECRET_KEY = 'I3uaom2fiWMBNZQpOIQCdi0N7x1V13hNJBfSmO0C' # 待修改
QINIU_BUCKET_NAME = 'shuju9'
QINIU_DOMAIN = 'lyamcn.com'
# 使用七牛云作为默认文件存储后端
DEFAULT_FILE_STORAGE = 'qiniu_storage.storage.QiniuStorage'
QINIU_STORAGE_OPTIONS = {
'access_key': QINIU_ACCESS_KEY,
'secret_key': QINIU_SECRET_KEY,
'bucket_name': QINIU_BUCKET_NAME,
'bucket_domain': QINIU_DOMAIN,
}
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'
print(f"完整路径: {path}")
print(f"文件名: {filename}")

View File

@@ -0,0 +1 @@
[{"description":"treehash per file","signed_content":{"payload":"eyJjb250ZW50X2hhc2hlcyI6W3siYmxvY2tfc2l6ZSI6NDA5NiwiZGlnZXN0Ijoic2hhMjU2IiwiZmlsZXMiOlt7InBhdGgiOiJoZXVyaXN0aWNfcmVnZXhlcy5iaW5hcnlwYiIsInJvb3RfaGFzaCI6Im9ROWwxLURWWndMVzhJaFF5TDdwdlZHdkZfUy1CUmtBX3l1SXlTRi1RbDgifSx7InBhdGgiOiJtYW5pZmVzdC5qc29uIiwicm9vdF9oYXNoIjoibGFLd2RJdXU1d2RBX3kxZHA0LVl0YUtaVUZZdm1KV1I4TEMxdnhNMVM0VSJ9XSwiZm9ybWF0IjoidHJlZWhhc2giLCJoYXNoX2Jsb2NrX3NpemUiOjQwOTZ9XSwiaXRlbV9pZCI6Imhhamlnb3BiYmpoZ2hiZmltZ2tmbXBlbmZrY2xtb2hrIiwiaXRlbV92ZXJzaW9uIjoiNCIsInByb3RvY29sX3ZlcnNpb24iOjF9","signatures":[{"header":{"kid":"publisher"},"protected":"eyJhbGciOiJSUzI1NiJ9","signature":"mqnzWWPXdMmUXubyqBppOqxAY921JfSOK_NcvIfwW7mkskMg4BQz9pzkrCPEJkJVcG_XUzkx1ByskF-ZC03s0RRaghvq-xYyFIOeL8g1A6wge9NuIZiD_KGIFmjieufISG8gijhKXINUgo6aKiGVQXWlMIRluSkGYmcTDeGW87JI1CkybIDjk3BOyKewFQiPDoafqe0BtW6fW8904q-C4xrrQHyCbmOjqhmO4VIusYh3J_LA4so-B3O-nVC30XaISnRKYPDTQzsTkz_eJq9LJcPL5RORZUrRaiDLMINSJaOUtne_6CT-6tlEuaZdLpeL9oIIsAc6taHZsz8yJvHhaVnjQsXL6eJrBufupTRY5i_Q0ir_aAsiBIu5xcOirAeMknUhxmFCGW5h7xEdp-FBL2d4ukbSDhlv2qrhPzd0TjNshQoXBaZSvLVjv9sC4RSF4vwva8j9O81ZfmFyyyzBs_mYsM0cMrrRETTXg_KrYiF-CSYBM3cZQWFyJ-w_-G0kRiryB0tG9AYkDAo2DcPuHAO7pRibl7CwM9mxsD4SFjiN_dlPUfMHBUGhgPZofVb2c7nY7ztndNKPzNKwYOZLrhj8G6-TQgJL7QplhG761mrkUrZOGzAIBu8i4HN9SqfFIClGNjLYdmXruTveYMQV0RwO--7HT4Dvd2OEwa5shsw"},{"header":{"kid":"webstore"},"protected":"eyJhbGciOiJSUzI1NiJ9","signature":"CG6KXxg_Mpqgw7XcrysRHH5F6HAql4JmenqcSzsnyja8z2d_cW6IfuHAmBQ78gE8HGIa4RUC3JQn08MN5zH2PlLfo4Lnr6NOyQGatRN7PZyK6gzaIMhK_0-CVEHR-A2mP9JpT9ksmxcURiKpAK44fTqod2KpzJMILYEFnB11MsZSEVYMYWQqT1mq4gRqo0uBne6paqZXKxLXIorweRX2KYPMYX9tHFt8CugLW5LmKPbReIJ4XJaLhLxRCHimnKtqx4r1_y7xPfitVCHIAfM5QVY6hv3xubPN2_bIPMeI6k2IlCZAH2tRptGgm9a80KlDpNQxMd9Eqi_z246ltVL2iA"}]}}]

View File

@@ -0,0 +1,3 @@
<EFBFBD>
<EFBFBD>(?:US\$|USD|\$)\s*\d{1,3}(?:[.,]\d{3})*(?:[.,]\d{2})?(?:\s*)(?:USD|US\$|\$)?|(?:USD|US\$|\$)?\s*\d{1,3}(?:[.,]\d{3})*(?:[.,]\d{2})?\s*(?:USD|US\$|\$)<12>^(?:\s*)(Due now \(USD\)|(Estimated )?(?:Order Total|Total:?)|TOTAL CHARGED TODAY \*|Final Total Price:|Flight total|grand total:?|Order Total(?: \(USD\))?:?|Price|Total(?:(?: \(USD\))?| Due| for Stay| Price| to be paid:| to pay|:)?|(Your )?(?:Payment Today|total(\s)price|Total:)|Show Order Summary:|Reservation Deposit Amount Due|Payment Due Now|Your Price|Total Due Now|Amount to pay|Total amount due|You pay today|Order Summary|TOTAL PAYMENT DUE|Payable Amount)(?:\s*)$

View File

@@ -0,0 +1,5 @@
{
"manifest_version": 2,
"name": "Amount Extraction Heuristic Regexes",
"version": "4"
}

View File

@@ -0,0 +1,10 @@
AD
canilloparròquia de canillo
encampparròquia d'encamp&
la massanaparròquia de la massana
ordinoparròquia d'ordino<
#parròquia de sant julià de lòriasant julià de lòria1
andorra la vellaparròquia d'andorra la vella3
escaldesengordanyparròquia d'escaldesengordany

View File

@@ -0,0 +1,10 @@
AE
عجمانajmanE
أبو ظبي abu dhabiأبو ظَبيإمارة أبو ظبي$
إمارة دبيّdubaiدبي5
إمارة الفجيرةfujairahالفجيرةE
إمارة رأس الخيمةras al khaimahرأس الخيمةQ
إمارة الشارقةsharjahإمارة الشارقةّالشارقةo

View File

@@ -0,0 +1,44 @@
AF5
بلخbalkhبلخ ولايتولایت بلخH
بامیانbamyanباميان ولايتولایت بامیانI
بادغیسbadghisبادغيس ولايتولایت بادغیسL
بدخشان
badakhshanبدخشان ولايتولایت بدخشانC
بغلانbaghlanبغلان ولايتولایت بغلانc
دایکندیdaykundiدايکندي ولايتدایکنډي‎ولایت دایکندی;
فراهfarahفراه ولايتولایت فراهH
فاریابfaryabفارياب ولايتولایت فاریاب<
غزنيghazniغزني ولايتولایت غزنی4
غورghorغور ولايتولایت غورC
هلمندhelmandهلمند ولايتولایت هلمند;
هراتheratهرات ولايتولایت هراتI
جوزجانjowzjanجوزجان ولايتولایت جوزجان
کابلkabulM
ولایت قندهارkandahar قندهار قندھار کندهارH
ولایت کاپیساkapisa کاپيساکاپيسا ولايت@
كندزkunduzولایت کندوزکندوز ولايتH
خوستkhostخوست ولايت خوست‎ولایت خوست2
ولایت کنرkunar کنر‎ کونړ‎C
لغمانlaghmanلغمان ولايتولایت لغمانG
لوگَرlogarلوګرلوګر ولايتولایت لوگرd
ننګرهار nangarharد ننګرهار ولايتننگرهارولایت ننگرهارH
نیمروزnimruzنيمروز ولايتولایت نیمروزP
نورستانnuristanنورستان ولايتولایت نورستانJ
ولایت پنجشیرpanjshir پنجشیرپنجشېر ولايتB
ولایت پروانparwan
پروانپروان ولايت7
ولایت پکتیاpaktia
پکتيا
پکتیاI
ولایت پکتیکاpaktikaپکتيکا ولايت پکتیکاJ
سمنگانsamanganسمنګان ولايتولایت سمنگانD
سر پلsarsare polسرپل ولايتولایت سرپل<
تخارtakharتخار ولايتولایت تخار=
ولایت اروزگانoruzganروزګان ولايتF
ميدان وردگwardakوردکوردګولایت وردک;
زابلzabulزابل ولايتولایت زابل

View File

@@ -0,0 +1,13 @@
AG#
saint georgesaint george parish
saint johnsaint john parish
saint marysaint mary parish
saint paulsaint paul parish!
saint petersaint peter parish#
saint philipsaint philip parish
barbuda
redonda

View File

@@ -0,0 +1,14 @@
AL(
beratit berat countyqarku i beratit.
durrësitdurrës countyqarku i durrësit.
elbasanitelbasan countyqarku i elbasanit*
fier fier countyfiertqarku i fieritI
gjirokastrës gjirokastërgjirokastër countyqarku i gjirokastrës5
korçëkorçë countykorçësqarku i korçës!
qarku i kukësit
kukës county
qarku i lezhës
lezhë county
qarku i dibrës

View File

@@ -0,0 +1,15 @@
AMH
արագածոտնaragatsotn provinceարագածոտնի մարզ8
արարատararat provinceարարատի մարզ=
արմավիրarmavir provinceարմավիրի մարզ#
երեւանyerevan
երևանQ
գեղարքունիքgegharkunik province!գեղարքունիքի մարզ8
կոտայքkotayk provinceկոտայքի մարզ.
լոռի
lori provinceլոռու մարզ4
շիրակshirak provinceշիրակի մարզ<
սյունիքsyunik provinceսյունիքի մարզ8
տավուշtavush provinceտավուշի մարզG

View File

@@ -0,0 +1,21 @@
AO
bengobengo province
benguelabenguela province
bié
bié province
cabindacabinda province(
cuandocubangocuando cubango province
cunenecunene province1
cuanzanortecuanza norte province kwanzanorte+
cuanzasulcuanza sul province kwanzasul
huambohuambo province
huílahuila province/
lunda nortelunda norte province
lundanorte
lundasullunda sul province
luandaluanda province
malanjemalanje province
moxicomoxico province&
moçâmedesnamibenamibe province

View File

@@ -0,0 +1,29 @@
AR+
provincia de saltasaltasalta province@
buenos airesbuenos aires provinceprovincia de buenos aires_
buenos airescabacapital federal ciudad autónoma de buenos airesciudad de buenos aires4
provincia de san luissan luissan luis province=
entre ríosentre ríos provinceprovincia de entre ríos4
la riojala rioja provinceprovincia de la riojaU
provincia de santiago del esterosantiago del esterosantiago del estero province,
chacochaco provinceprovincia del chaco4
provincia de san juansan juansan juan province#
catamarcaprovincia de catamarca4
la pampala pampa provinceprovincia de la pampa1
mendozamendoza provinceprovincia de mendoza4
misionesmisiones provinceprovincia de misiones1
formosaformosa provinceprovincia de formosa5
neuquénneuquén provinceprovincia del neuquén:
provincia de río negro
río negrorío negro province4
provincia de santa fesanta fesanta fe province4
provincia de tucumántucumántucumán province/
chubutchubut provinceprovincia del chubutL
provincia de tierra del fuegotierra del fuegotierra del fuego province:
corrientescorrientes provinceprovincia de corrientes4
córdobacórdoba provinceprovincia de córdoba+
jujuyjujuy provinceprovincia de jujuy:
provincia de santa cruz
santa cruzsanta cruz province

View File

@@ -0,0 +1,7 @@
AS
manu'amanu'a district
easterneastern district
rose island
westernwestern district

View File

@@ -0,0 +1,14 @@
AT
burgenland
kärnten carinthia"
niederösterreich
lower austria-
oberösterroberösterreich
upper austria
land salzburgsalzburg
steiermarkstyria
tiroltyrol

View File

@@ -0,0 +1,12 @@
AU
jervis bay territoryjbt#
australian capital territoryact
new south walesnsw
northern territorynt
queenslandqld
south australiasa
tasmaniatas
victoriavic
western australiawa

View File

@@ -0,0 +1,5 @@
AX&
mariehamns stadmariehamn subregion!
ålands skärgård archipelago
ålands landsbygd countryside

View File

@@ -0,0 +1,4 @@
AZM
naxçıvannakhchivan autonomous republicnaxçıvan muxtar respublikası

View File

@@ -0,0 +1,5 @@
BA<12>
federacija bosne i hercegovine$federation of bosnia and herzegovinaедерација босне и херцеговине?
brčko distriktbrčko districtбрчко дистриктS
republika srpskaрепублика српскaрепублика српска

View File

@@ -0,0 +1,15 @@
BB%
christ churchchrist church parish#
saint andrewsaint andrew parish#
saint georgesaint george parish!
saint jamessaint james parish
saint johnsaint john parish#
saint josephsaint joseph parish
saint lucy%
saint michaelsaint michael parish!
saint petersaint peter parish#

View File

@@ -0,0 +1,10 @@
BD6
"বরিশাল বিভাগbarisal division_
+চট্টগ্রাম বিভাগchittagong divisionচট্রগ্রাম.
ঢাকা বিভাগdhaka division2
খুলনা বিভাগkhulna divisionQ
রাজশাহীrajshahi division%রাজশাহী বিভাগD
রংপুরrangpur divisionরংপুর বিভাগ2
সিলেট বিভাগsylhet divisionB
+ময়মনসিংহ বিভাগmymensingh division

View File

@@ -0,0 +1,6 @@
BE\
bruxellesbrusselbrusselsbrussels hoofdstedelijk gewestrégion de bruxellescapitale%
vlaams gewestflanders
vlaanderen&

View File

@@ -0,0 +1,18 @@
BF-
boucle du mouhounboucle du mouhoun region
cascadescascades region
centre
centre region)
centre est centreestcentreest region,
centre nord
centrenordcentrenord region9
centreouestcentreouest regionrégion du centreouest
centresudcentresud region
est
est region#
hautsbassinshautsbassins region
nord nord region8
plateau centralplateaucentralplateaucentral region
sahel sahel region

View File

@@ -0,0 +1,37 @@
BGS
благоевградblagoevgrad province#област благоевград1
бургасburgasобласт бургас,
варнаvarnaобласт варна`
велико търновоveliko tarnovo province(област велико търново,
видинvidinобласт видин-
врацаvratsaобласт враца6
габровоgabrovoобласт габрово;
добричdobrich provinceобласт добричE
кърджалиkardzhali provinceобласт кърджалиJ
кюстендилkyustendil provinceобласт кюстендил-
ловечlovechобласт ловеч?
монтанаmontana provinceобласт монтанаA
област пазарджик
pazardzhikпазарджик1
област перникpernik перник:
област плевенpleven province плевен?
област пловдивplovdiv provinceпловдив6
област разградrazgradразград'
област русеruseрусе;
област силистраsilistraсилистра
сливенsliven province2
област смолянsmoljan смолянB
област софияsofia city provinceсофияградH
софийска областsofia provinceсофия областM
$област стара загора stara zagoraстара загораK
област търговищеtargovishte provinceтърговище?
област хасковоhaskovo provinceхасково%
област шумен
шумен-
област ямболjambol
ямбол

View File

@@ -0,0 +1,6 @@
BH2
محافظة العاصمةcapital governorateG
!المحافظة الجنوبيةsouthern governorate جنوبية1
محافظة المحرقmuharraq governorateK
الشماليةnorthern governorate!المحافظة الشمالية

View File

@@ -0,0 +1,20 @@
BI
province de rumongerumonge
bubanzaprovince de bubanza.
bujumbura ruralprovince de bujumbura ruralO
bujumbura mairieiprovense ya bujumbura mairieprovince de bujumbura mairie
bururiprovince de bururi
cankuzoprovince de cankuzo
cibitokeprovince de cibitoke
gitegaprovince de gitega
kirundoprovince de kirundo
karuziprovince de karuzi
kayanzaprovince de kayanza
makambaprovince de makamba
muramvyaprovince de muramvya
mwaroprovince de mwaro
muyingaprovince de muyinga
ngoziprovince de ngozi
province de rutanarutana
province de ruyigiruyigi

View File

@@ -0,0 +1,15 @@
BJ&
atacoraatakoraatakora department
aliborialibori department#
atlantiqueatlantique department
borgouborgou department:
collinescollines departmentdépartement des collines
dongadonga department#
couffokouffokouffo department9
département du littorallittorallittoral department
monomono department
ouéméouémé department6
département du plateauplateauplateau department
zouzou department

View File

@@ -0,0 +1,13 @@
BM
pembrokepembroke parish0
saint george'sst george's parish
stgeorge's
hamiltonhamilton parish
warwickwarwick parish'
smith's parishsmiths
smiths parish!
southamptonsouthampton parish
devonshiredevonshire parish
sandys

View File

@@ -0,0 +1,6 @@
BN(
belaitbelait district
daerah belaitL
bruneimuarabruneimuara districtdaerah brunei muaradaerah bruneimuara1
daerah temburong temburongtemburong district(

View File

@@ -0,0 +1,14 @@
BO.
benibeni departmentdepartamento del beni?
cochabambacochabamba departmentdepartamento de cochabambae
chuquisacachuquisaca department$departamento autónomo de chuquisacadepartamento de chuquisacaU
departamento autónomo de la pazdepartamento de la pazla pazla paz departmenth
departamento autónomo de pandodepartamento de pandogobernación de pandopandopando departmentg
departamento autónomo de orurodepartamento de orurogobernacón de oruroorurooruro departmentq
!departamento autónomo de potosídepartamento de potosígobernación de potosípotosi departmentpotosíe
$departamento autónomo de santa cruzdepartamento de santa cruz
santa cruzsanta cruz departmentU
departamento de tarija departemento autónomo de tarijatarijatarija department

View File

@@ -0,0 +1,5 @@
BQ
bonaireboneiru
saba
sint eustatius

View File

@@ -0,0 +1,31 @@
BR
acreac
state of acre
alagoasalstate of alagoas!
amazonasamstate of amazonas
amapáapstate of amapá"
bahiababaíastate of bahia
cearáce(
distrito federaldffederal district?
espirito santoesespírito santostate of espírito santo
goiásgostate of goiás#
maranhãomastate of maranhão0
minasmg minas geraisstate of minas gerais5
mato grosso do sulmsstate of mato grosso do sul'
mato grossomtstate of mato grosso
parápastate of pará!
paraíbapbstate of paraíba%
pernambucopestate of pernambuco
piauípistate of piauí
paranáprstate of paranáA
baixada fluminenserjrio de janeirostate of rio de janeiro7
rio grande do norternstate of rio grande do norte#
rondôniarostate of rondônia
roraimarrstate of roraima3
rio grande do sulrsstate of rio grande do sul-
santa catarinascstate of santa catarina
sergipesestate of sergipe%
são paulospstate of são paulo#

View File

@@ -0,0 +1,35 @@
BS
new providence
acklins
biminibimini and cat cay
black point
berry islands
central eleuthera
cat island
crooked island and long cay
central abaco
central andros
east grand bahama
exuma
city of freeportfreeport
grand cay
harbour island
hope town
inagua
long island
mangrove cay
mayaguana
abacomoore's island
north eleuthera
north abaco
north andros
rum cay
ragged island
south andros
south eleuthera
south abaco

View File

@@ -0,0 +1,24 @@
BT>
paro
paro district'སྤ་རོ་རྫོང་ཁགH
chhukhachukhachukha district$ཆུ་ཁ་རྫོང་ཁག
hahaaP
samchisamtsesamtse district-བསམ་རྩེ་རྫོང་ཁགf
thimphuthimphu districtthimpu*ཐིམ་ཕུ་རྫོང་ཁགཐིམ་ཕུགP
chirangtsirangtsirang district*རྩི་རང་རྫོང་ཁགT
dagadaganadagana district3དར་དཀར་ནང་རྫོང་ཁགJ
punakhapunakha district-སྤུ་ན་ཁ་རྫོང་ཁགt
wangdue phodrangwangdue phodrang districtEདབང་འདུས་ཕོ་བྲང་རྫོང་ཁགJ
sarpangsarpang district-གསར་སྤང་རྫོང་ཁགU
tongsatrongsatrongsa district0ཀྲོང་གསར་རྫོང་ཁགI
bumthangbumthang district*བུམ་ཐང་རྫོང་ཁགR
zhemgangzhemgang district3གཞམས་སྒང་རྫོང་ཁག་a
tashigang
trashigangtrashigang district3བཀྲིས་སྒང་རྫོང་ཁགH
mongarmongar district-མོང་སྒར་རྫོང་ཁགu
pemagatsel pemagatshelpemagatshel district premagalshel6པདྨ་དགའ་ཚལ་རྫོང་ཁག%
lhuntselhuntse districtlhuntshi}
samdrup jongkharsamdrup jongkhar districtNབསམ་གྲུབ་ལྗོངས་མཁར་རྫོང་ཁག
gasa

View File

@@ -0,0 +1,21 @@
BW
francistown city
selibe phikwe town
lobatse town
jwaneng town
chobe district
gaborone city
sowa town>
centralcentral districtkgaolo ya legarengwati district+
ghanzighanzi districtkgaolo ya ghanziD
kgalagadikgalagadi district#kgalagadi le dikgaolo tse di mabapi
kgatlengkgatleng district
kwenengkweneng district+
north east northeastnortheast district
north westnorthwest district+
south east southeastsoutheast district8

View File

@@ -0,0 +1,8 @@
BYT
!брэсцкая вобласць brest region!брестская областьZ
%гомельская вобласць gomel region#гомельская область<12>
)гарадзенская вобласць
hrodna region'гродзенская вобласць%гродненская область`
'магілёўская вобласцьmogilev region%могилёвская областьN
мінская вобласць minsk regionминская областьX

View File

@@ -0,0 +1,8 @@
BZ
belizebelize district
cayo
cayo district
corozalcorozal district#
orange walkorange walk district#
stann creekstann creek district

View File

@@ -0,0 +1,15 @@
CA
albertaab
british columbiabc
manitobamanmb%
new brunswicknbnouveaubrunswick7
labradornl newfoundlandnewfoundland and labrador
nova scotians
northwest territoriesnt
nunavutnu
ontonontario
peipeprince edward island
québecqcquebec
saskatchewansk

View File

@@ -0,0 +1,3 @@
CC(
shire of cocos islandsshire of cocos

View File

@@ -0,0 +1,32 @@
CD
kwilu
sankuru
kasaïkasai
tanganyika-
kasaicentralkasaï central
kasaïcentral
tshopo
hautkatanga
lualaba
kwango
hautuele
hautuélé
ituri
tshuapa
maindombe
sudubangi
hautlomami
mongala
lomami
basuele
nordubangi'
bascongo
kongo central kongocentral-
province de l'équateurequator équateur@
kasaiorientalkasai orientalkasaï orientalkasaïoriental
kinshasalipopo

View File

@@ -0,0 +1,22 @@
CF
ouham
baminguibangoran<
archidiocèse de banguibanguikötä gbätä tî bangî
bassekotto
hautekotto
hautmbomou1
mamberekadeimambérékadéimambérékadéï(
nanagrebizi nanagribizi nanagrébizi
kemokémo
lobaye
mbomouO
ombella m'poko
ombellam'poko.sêse tî kömändâkötä tî ömbëläpökö<
nanamambéré+sêse tî kömändâkötä tî nanämambere
ouham pendé ouhampendé
sanghambaresanghambaéré

View File

@@ -0,0 +1,16 @@
CG
bouenza
pool
sangha
plateaux
cuvetteouest&
pointenoire pointe noire pwantenwa
lékoumoulekoumou
kouiloukuilu
likouala
cuvette
niari
brazzaville

View File

@@ -0,0 +1,33 @@
CH
aargauag
kanton aargau9
appenzell innerrhodenaikanton appenzell innerrhoden;
appenzell ausserrhodenarkanton appenzell ausserrhoden'
bernbecanton of bern kanton bern=
basel (kanton)blbasellandschaftkanton basellandschaft>
basel (stadt)bs
basel city
baselstadtkanton baselstadta
freiburgfrcanton de fribourgcanton friburgofribourgfriburgfriburgokanton freiburg
genèvegegeneva
glarusgl
kanton glarus.
graubündengrgrisonskanton graubünden
canton du jurajujura$
kanton luzernlulucerneluzern&
canton de neuchâtelne
neuchâtel!
nidwaldennwkanton nidwalden
kanton obwaldenowobwalden2
kanton sankt gallensg sankt gallen st gallen'
kanton schaffhausensh schaffhausen!
kanton solothurnso solothurn
kanton schwyzszschwyz
kanton thurgautgthurgau
canton ticinotiticino

View File

@@ -0,0 +1,18 @@
CI:
district autonome d'abidjanabidjan autonomous districtX
bassassandrabassassandra districtdistrict du bassassandrarégion du bassassandra4
comoecomoécomoé districtdistrict du comoéC
denguele
denguélédenguélé districtdistrict du denguéléH
district du gôhdjiboua
gohdjiboua gôhdjibouagôhdjiboua district:
district des lacslacs
lacs districtrégion des lacsF
district des laguneslaguneslagunes districtrégion des lagunesX
18 montagnesdistrict des montagnesdixhuit montagnes montagnesmontagnes districtd
district du sassandramarahouésassandramarahouesassandramarahouésassandramarahoué districtF
district des savanesrégion des savanessavanessavanes districtf
!district de la vallée du bandamavalle du bandamavallée du bandamavallée du bandama district-
district du worobaworobaworoba districtH
!district autonome du yamoussoukro yamoussoukroyamoussoukro district-

View File

@@ -0,0 +1,29 @@
CL<12>
11 región,aisén del general carlos ibáñez del campoaysén,aysén del general carlos ibáñez del campo4región aisén del general carlos ibáñez del campo7región de aysén del general carlos ibáñez del campo
xi región7xi región aisén del general carlos ibáñez del campoW
2 región antofagasta
ii regiónii región de antofagastaregión de antofagastal
15 regionarica y parinacotaregión de arica y parinacota
xv región xv región de arica y parinacotat
9 región araucania
araucanía
ix regiónix región de la araucanía
la araucaníaregión de la araucaníaM
3 regiónatacama iii regióniii región de atacamaregión de atacama<12>
8 regiónbio biobiobío bío bíoregión del biobíoregión del bío bíoregión del bíobío viii regiónviii región del bío bíoN
4 regióncoquimbo
iv regióniv región de coquimboregión de coquimbo<12>
6 región%libertador general bernardo o'higgins'libertador general bernardo ohiggins o'higginsregión de ohiggins3región del libertador general bernardo ohiggins
vi región6vi región del libertador general bernardo ohigginsP
10 región los lagosregión de los lagos x regiónx región de los lagosT
14 región los ríosregión de los ríos xiv regiónxiv región de los ríos<12>
12 región!magallanes and chilean antarctica%magallanes y de la antártica chilena"magallanes y la antártica chilena0región de magallanes y de la antártica chilena-región de magallanes y la antártica chilena xii región1xii región de magallanes y la antártica chilenaI
7 regiónmauleregión del maule vii regiónvii región del maule0
provincia de ñubleregión de ñubleñuble<12>
metropolitana de santiagoregión metropolitana!región metropolitana de santiagorm$rm región metropolitana de santiagosantiago metropolitan regionO
1 región i regióni región de tarapacáregión de tarapacá tarapacáU

View File

@@ -0,0 +1,12 @@
CM:
adamawaadamaouaadamawa regionrégion de l'adamaouaG
centralcentre
centre regionprovince du centrerégion du centre~
extreme north extreme nord extrêmenord far northfar north regionfarnorthrégion de l'extrêmenordrégion du nord=
east east regionestprovince de l'estrégion de l'estJ
littoraldépartement du littorallittoral regionrégion du littoral>
northnord north regionprovince du nordrégion du nord>
northwest nordouestnorthwest regionrégion du nordouestC
westouestprovince de l'ouestrégion de l'ouest west region;

View File

@@ -0,0 +1,33 @@
CN
北京beijing 北京市
天津tianjin 天津市
hebei河北 河北省
山西shanxi 山西省/
内蒙古inner mongolia内蒙古自治区
辽宁liaoning 辽宁省
吉林jilin 吉林省'
黑龙江 heilongjiang 黑龙江省
上海shanghai 上海市!
江苏jiangsu 江苏省
浙江zhejiang 浙江省
安徽anhui 安徽省
福建fujian 福建省!
江西jiangxi 江西省"
山东shandong 山东省
河南henan 河南省
湖北hubei 湖北省
湖南hunan 湖南省'
广东guangdong province 广东省3
广西guangxi广西壮族自治区 广西省
海南hainan 海南省
重庆 chongqing 重庆市&
四川sichuan 四川省&
guizhou贵州 贵州省
云南yunnan 云南省%
tibet西藏西藏自治区
陕西shaanxi 陕西省$
gansu甘肃 甘肃省
青海qinghai 青海省-
ningxia宁夏宁夏回族自治区1
xinjiang新疆新疆维吾尔自治区

View File

@@ -0,0 +1,42 @@
CO
amazonas
antioquia
arauca
atlántico atlantico
bolívarbolivar
boyacáboyaca
caldas
caquetácaqueta
casanare
cauca
cesar
chocóchoco
córdobacordoba
cundinamarcaL
bogotábogota
bogotá dcdistrito capitaldistrito capital de bogotá
guainíaguainia
guaviare
huila
la guajira
magdalena
meta
nariñonarino%
norte de santandernorth santander
putumayo
quindíoquindio
risaralda
santanderU
archipiélago de san andréssan andres and providenciasan andrés y providencia
sucre
tolima
valle del cauca
vaupésvaupes
vichada

View File

@@ -0,0 +1,11 @@
CR4
alajuelaalajuela provinceprovincia de alajuela1
cartagocartago provinceprovincia de cartago:
guanacasteguanacaste provinceprovincia de guanacaste1
herediaheredia provinceprovincia de heredia5
limonlimónlimón provinceprovincia de limón:
provincia de puntarenas
puntarenaspuntarenas province7
provincia de san josé san josésan josé province

View File

@@ -0,0 +1,20 @@
CU<
pinar del río
pinar del rioprovincia de pinar del río7
ciudad habanahavana la habanaprovincia la habana!
matanzasprovincia de matanzas'
provincia de villa clara villa clara;
cienfuegosprovincia cienfuegosprovincia de cienfuegosB
provincia de sancti spíritussancti spiritussancti spíritus?
ciego de ávilaciego de avilaprovincia de ciego de ávila-
camagüeycamagueyprovincia de camagüey#
las tunasprovincia de las tunas*
holguínholguinprovincia de holguín
granmaprovincia de granma1
provincia de santiago de cubasantiago de cuba3
guantánamo
guantanamoprovincia de guantánamo4
artemisaartemisa provinceprovincia de artemisa#

View File

@@ -0,0 +1,28 @@
CV
brava
boa vista
santa catarina
santa catarina do fogo
santa cruz
maio
mosteiros
paulpaúl
porto novo
praia
ribeira brava
ribeira grande
ribeira grande de santiago
são domingos
são filipe
sao filipe
sal
são miguel
são lourenço dos órgãos
são salvador do mundo
são vicente

View File

@@ -0,0 +1,3 @@
CX
shire of christmas island

View File

@@ -0,0 +1,9 @@
CYZ
!επαρχία λευκωσίαςlefkoşalefkoşa kazasınicosiaλευκωσία#
λεμεσόςlimasollimassolT
επαρχία λάρνακαςlarnacalarnakalarnaka kazasıλάρνακα.
αμμόχωστος famagusta gazimağusaJ
επαρχία πάφουbaf baf kazasıgazibafpaphos
πάφος
κερύνειαgirne

View File

@@ -0,0 +1,16 @@
CZ
hlavní město prahaprague.
středočeský krajcentral bohemian region)
jihočeský krajsouth bohemian region
plzeňský kraj
plzeň region(
karlovarský krajkarlovy vary region)
ústecký krajústí nad labem region!
liberecký krajliberec region2
královéhradecký krajhradec králové region$
pardubický krajpardubice region"
kraj vysočinavysočina region+
jihomoravský krajsouth moravian region!
olomoucký krajolomouc region
zlínský kraj zlín region0

View File

@@ -0,0 +1,19 @@
DE
brandenburgbb
berlinbe
badenwürttembergbw
bayernbybavaria%
bremenhbfreie hansestadt bremen
hessenhe
hamburghh
mecklenburgvorpommernmv"
niedersachsennds lower saxony0
nordrheinwestfalennrwnorth rhinewestphalia)
rheinlandpfalzrprhinelandpalatinate
schleswigholsteinsh
saarlandsl
sachsensnsaxony!
sachsenanhaltsa saxonyanhalt

View File

@@ -0,0 +1,11 @@
DJ5
أرتاartarégion d'artaإقليم عرتاO
إقليم على صبيح
ali sabiehrégion d'ali sabiehعلي صبيح<
إقليم دخيلdikhilrégion de dikhil
دِخيل
جيبوتيdjibouti;
أوبوكobockrégion d'obockإقليم أوبوخ_
إقليم تاجورةrégion de tadjourah tadjourahإقليم تجرةتادجورا

View File

@@ -0,0 +1,10 @@
DK
christiansø
ertholmene7
nordjyllandnorth denmark regionregion nordjylland9
midtjyllandcentral denmark regionregion midtjylland;
region syddanmarkregion of southern denmark
syddanmark<
hovedstadencapital region of denmarkregion hovedstaden-
region sjællandregion zealand sjælland

View File

@@ -0,0 +1,16 @@
DM#
saint andrewsaint andrew parish!
saint davidsaint david parish#
saint georgesaint george parish
saint johnsaint john parish#
saint josephsaint joseph parish
saint lukesaint luke parish
saint marksaint mark parish%
saint patricksaint patrick parish
saint paulsaint paul parish!

View File

@@ -0,0 +1,36 @@
DO
distrito nacional
azua
azua province,
bahorucobaorucobaoruco provinceneiba
barahonabarahona province
dajabóndajabón province+
duarteduarte provinceduarte provinciaA
elias piña elías piñaelías piña province
la estrelleta
el seiboel seibo province
espaillatespaillat province'
independenciaindependencia province'
la altagraciala altagracia province
la romanala romana province
la vegala vega province=
maría trinidad sánchez!maría trinidad sánchez province2
monte cristimonte cristi province montecristi!
pedernalespedernales province
peraviaperavia province%
puerto platapuerto plata province6
hermanas mirabalhermanas mirabal provincesalcedo
samanásamaná province)
san cristóbalsan cristóbal province
san juansan juan provinceM
san pedro de macorissan pedro de macoríssan pedro de macorís province/
sánchez ramírezsánchez ramírez province
santiagosantiago province3
santiago rodríguezsantiago rodríguez province
valverdevalverde province+
monseñor nouelmonseñor nouel province#
monte platamonte plata province!

View File

@@ -0,0 +1,69 @@
DZC
أدرارadrar provincewilaya d'adrarولاية أدرار\
شلفchlefchlef provincewilaya de chlefولاية الشلولاية الشلفR
الأغواطlaghouat provincewilaya de laghouatولاية الأغواطy
أم البواقي‎oum el bouaghi province
oum elbouaghiwilaya d'oum el bouaghiولاية أم البواقي8
ولاية باتنةbatna provincewilaya de batna\
بجايةbéjaïabéjaïa provincevgayetwilaya de béjaïaولاية بجايةW
بسكرة‎biskra provincewilaya de biskra بِسكرةولاية بسكرةM
بشارbécharbéchar provincewilaya de bécharولاية بشارS
البليدةblidablida provincewilaya de blidaولاية البليدةv
البويرةbouirabouïrabouïra provincetuvirettwilaya de bouira
بويرةولاية البويرةp
تمنراستwilaya de tamanghassettamanrasset provincewilaya de tamanrassetولاية تمنراست^
تبسةtébessatébessa provincewilaya de tébessa تيبيساولاية تبسةg
تلمسانtlemcentlemcen provincewilaya de tlemcenتلِمسِانولاية تلمسانF
تيارتtiaret provincewilaya de tiaretولاية تيارت<12>
تيزي أوزو
tizi ouzoutizi ouzou province tiziouzouwilaya de tizi ouzouتيزي وزوولاية تيزي وزو
الجزائرalgeralgiers provincewilaya d'algerالجزائر العاصمة
دزايرولاية الجزائرJ
الجلفةdjelfa provincewilaya de djelfaولاية الجلفة@
جيجلjijel provincewilaya de jijelولاية جيجلJ
سطيفsétifsétif provincewilaya de sétifولاية سطيفL
صيداsaïdasaïda provincewilaya de saïdaولاية سعيدة[
سكيكدةskikda provincewilaya de skikdaسكيكدة‎ولاية سكيكدة<12>
سيدي بلعباسsidi bel abbessidi bel abbès province
sidibelabbèswilaya de sidi bel abbèsسيدي بلعباس‎ ولاية سيدي بلعباسA
ولاية عنابةannabaannaba provincewilaya d'annabaN
قالمةguelmaguelma provincewilaya de guelmaولاية قالمة<12>
القسطنطينية constantineconstantine provincewilaya de constantineقسنطينة‎ولاية قسنطينةd
المدية‎médéamédéa provincewilaya de médéa
ميدياولاية المديةy
مستغانم‎
mostaganemmostaganem provincewilaya de mostaganemمُستَغنِمولاية مستغانمe
المسيلة‎m'silam'sila provincewilaya de m'sila
مسيلةولاية المسيلة`
معسكرmascaramascara provincewilaya de mascara
معسكر‎ولاية معسكر\
ورجلةouarglaouargla provincewilaya d'ouargla
ورقلةولاية ورقلة^
ولاية وهرانoran
oran provincewahren
wilaya d'oran
وهران
وهران‎d
البيضel bayadh provinceelbayadhwilaya d'el bayadh
البيض‎ولاية البيضT
اليزيillizi provincewilaya d'illizi
اليزي‎ولاية إليزي<12>
برج بوعريريجbordj bou arréridjbordj bou arréridj provincebordjbouarreridjwilaya de bordj bou arreridjبرج بوعريريج‎"ولاية برج بوعريريجy
بومرداس‎
boumerdèsboumerdès provincewilaya de boumerdèsبومِردِاسولاية بومرداسf
الطارفel taref provinceeltarefwilaya d'el tarfالطارف‎ولاية الطارفq
تندوفtindouf provincewilaya de tindouf
تندوف‎ولاية تندوفولاية تندوف‎m
تسمسيلت‎tissemsilt provincewilaya de tissemsiltتيسمسيلتولاية تيسمسيلتd
العويضel oued provinceelouedwilaya d'el ouedالوادي‎ولاية الواديe

View File

@@ -0,0 +1,31 @@
EC
azuayprovincia de azuay*
bolívarbolivarprovincia de bolívar
carchiprovincia de carchi!
orellanaprovincia de orellana9
cantón esmeraldas
esmeraldasprovincia de esmeraldas
cañarprovincia de cañar
guayasprovincia del guayas%
chimborazoprovincia de chimborazo!
imbaburaprovincia de imbabura
lojaprovincia de loja
manabíprovincia de manabí
napoprovincia de napo
el oroprovincia de el oro#
pichinchaprovincia de pichincha-
los ríoslos riosprovincia de los ríos?
morona santiagomoronasantiagoprovincia de morona santiagoo
,provincia de santo domingo de los tsáchilassanto domingo de los tsachilassanto domingo de los tsáchilas'
provincia de santa elena santa elena%
provincia de tungurahua
tungurahua0
provincia de sucumbíos sucumbios
sucumbíosL
galápagosgalápagos provinceislas galápagosprovincia de galápagos!
cotopaxiprovincia de cotopaxi
pastazaprovincia de pastazaB
provincia de zamora chinchipezamora chinchipezamorachinchipe

View File

@@ -0,0 +1,17 @@
EE
harju maakond harju county
hiiu maakond hiiu county2
idaviru maakondidaviru countyi̇dаvirumаа!
jõgeva maakondjõgeva county
järva maakond
järva county!
lääne maakondlääne county)
lääneviru maakondlääneviru county
põlva maakond
põlva county
pärnu maakond
pärnu county
rapla maakond rapla county

View File

@@ -0,0 +1,35 @@
EG}
الأسكندريةalexandria governorateالإسكندريةالاسكندرية!محافظة الإسكندريةD
أسوانaswan governorate
اسوانمحافظة أسوان9
أسيوطassiut governorateمحافظة أسيوطT
البحر الأحمرred sea governorate$محافظة البحر الأحمرB
البحيرةbeheira governorateمحافظة البحيرةW
بنى سويفbeni suef governorateبني سويفمحافظة بني سويفC
القاهرةcairo governorateمحافظة القاهرة‬G
الدقهليةdakahlia governorateمحافظة الدقهلية;
دمياطdamietta governorateمحافظة دمياط=
الفيومfaiyum governorateمحافظة الفيومB
الغربيةgharbia governorateمحافظة الغربية;
الجيزةgiza governorateمحافظة الجيزةS
الإسماعيليةismailia governorate#محافظة الإسماعيليةP
جنوب سيناءsouth sinai governorate محافظة جنوب سيناءM
القليوبيةalqalyubia governorateمحافظة القليوبيةN
كفر الشيخkafr elsheikh governorateمحافظة كفر الشيخ/
قناqena governorateمحافظة قناJ
الأقصرluxor governorate الاقصرمحافظة الأقصر<
المنياminya governorateمحافظة المنياF
المنوفيةmenofia governorateمحافظة المنوفية@
محافظة مطروحmarsa matrouh governorate
مطروحD
بورسعيدport said governorateمحافظة بورسعيد8
سوهاجsohag governorateمحافظة سوهاجD
الشرقيةalsharqia governorateمحافظة الشرقيةP
شمال سيناءnorth sinai governorate محافظة شمال سيناء;
السويسsuez governorateمحافظة السويس_
الوادي الجديدthe new valley governorate&محافظة الوادي الجديد

View File

@@ -0,0 +1,5 @@
EH<12>
)الداخلة وادي الذهب‎‎oued eddahablagouirarío de orola güera-جهة وادي الذهب الڭويرة‎-
guelmimes semaraكلميم السمارةa
laâyouneboujdoursakia el hamra>جهة العيون بوجدور الساقية الحمراء

View File

@@ -0,0 +1,11 @@
ERN
أنسيباansebaإقليم أنسبا
عنسباዞባ ዓንሰባ<12>
1إقليم البحر الأحمر الجنوبيsouthern red sea جنوب البحر الأحمر"ديبوباوي كيه باهري'ዞባ ደቡባዊ ቀይሕ ባሕሪ7
الجنوبيةdebub
ديبوبዞባ ደቡብG
جاش بركا
gash barkaقاش بركاዞባ ጋሽ ባርካZ
المركزيةmaekelالمنطقة المركزيةمأكلዞባ ማእከል
سيمناوي كيه باهريnorthern red sea شمال البحر الأحمر'ዞባ ሰሜናዊ ቀይሕ ባሕሪ

View File

@@ -0,0 +1,22 @@
ES
andalucíaan andalusia
aragónararagon&
asturiasasprincipado de asturias
cantabriacb&
ceutaceciudad autónoma de ceuta)
castilla y leónclcastile and león=
castilla la manchacmcastilela manchacastillala mancha.
canariascncanary islandsislas canarias
catalunyact catalonia
extremaduraex
galiciagagaliza)
illes balearsibpmbalearic islands)
región de murciamcregion of murcia.
comunidad de madridmdcommunity of madrid*
ciudad autónoma de melillamlmelilla2
comunidad foral de navarrancnavarranavarre,
euskadipvbasque country
euskal herria

View File

@@ -0,0 +1,13 @@
ET>
አዲስ አበባ addis ababaአዲስ አበባ ፡፡#
አፋርafarአፋር ፡፡
አማራamharaP
ቤኒሻንጉል ጉሙዝ።benishangulgumuzቤንሻንጉልጉምዝ
ድሬዳዋ dire dawa
ጋምቤላgambella5
ሀሪሪ።harariሐረሪ ሕዝብ ክልል*
ኦሮሚያoromiaኦሮሚያን።<12>
0የደቡብ ብሔሮች ፣ ብሔረሰቦችsnnpr+southern nations, nationalities and peoplesCደቡብ ብሔሮች ብሔረሰቦችና ሕዝቦች ክልል(
ሶማሌsomaliሶማሌ ክልል'
ትግራይtigrayትግራይ።

View File

@@ -0,0 +1,26 @@
FIG
eteläkarjalaeteläkarjalan maakunta
south kareliasödra karelenU
eteläpohjanmaaeteläpohjanmaan maakuntasouth ostrobothniasödra österbotten>
eteläsavoeteläsavon maakunta
south savosödra savolax&
kainuukainuun maakunta
kajanalandN
kantahämeegentliga tavastlandegentligatavastlandkantahämeen maakuntaX
keskipohjanmaacentral ostrobothniakeskipohjanmaan maakuntamellersta österbottenF
keskisuomen maakuntacentral finland
keskisuomimellersta finland2
kymenlaaksokymenlaakson maakunta kymmenedalen*
lapin maakuntalaplandlappilappland+
pirkanmaa birkalandpirkanmaan maakunta<
pohjanmaa ostrobothniapohjanmaan maakunta österbottenH
pohjoiskarjala
norra karelen
north kareliapohjoiskarjalan maakuntaV
pohjoispohjanmaanorra österbottennorth ostrobothniapohjoispohjanmaan maakunta?
pohjoissavo
norra savolax

View File

@@ -0,0 +1,6 @@
FJ
central division
easterneastern division
northernnorthern division
western division

View File

@@ -0,0 +1,6 @@
FM
kosrae
pohnpei
pohnpei state
chuuk chuuk state

View File

@@ -0,0 +1,11 @@
FO
sandoyarsandoy
eysturoyareysturoy
vága kommunavágavágar
streymoyarstreymoy
suðuroyarsuduroy

View File

@@ -0,0 +1,15 @@
FR
auvergnerhônealpes
bourgognefranchecomté
bretagnebrittany
corsecorsica
centreval de loire
grand est
hautsdefrance
îledefranceidf
nouvelleaquitaine
normandienormandy
occitanie
provencealpescôte d'azur

View File

@@ -0,0 +1,14 @@
GA
estuaire
hautogooue hautogooué
moyenogooué moyenogooue
n'gouniéngouniengounié
nyanga
ogooueivindo
ogoouéivindo
ogoouelolo ogoouélolo!
ogoouémaritimeogoouemaritime

View File

@@ -0,0 +1,8 @@
GB<12>
_περιοχές κυρίαρχων βάσεων ακρωτηρίου και δεκέλειαςakrotiri and dhekeliaağrotur ve dikelya
england
northern ireland
scotland
walescymru

View File

@@ -0,0 +1,11 @@
GD#
saint andrewsaint andrew parish!
saint davidsaint david parish#
saint georgesaint george parish
saint johnsaint john parish
saint marksaint mark parish
saint patrick!

View File

@@ -0,0 +1,14 @@
GE
აფხაზეთიabkhaziaYაფხაზეთის ავტონომური რესპუბლიკაn
აჭარაadjaraSაჭარის ავტონომიური რესპუბლიკა<
გურიაguria"გურიის მხარეJ
იმერეთიimereti(იმერეთის მხარეD
კახეთიkakheti%კახეთის მხარეi
"ქვემო ქართლი kvemo kartli5ქვემო ქართლის მხარე}
*მცხეთამთიანეთიmtskhetamtianeti=მცხეთამთიანეთის მხარეr
Nრაჭალეჩხუმი და ქვემო სვანეთი rachalechkhumi and lower svaneti~
*სამცხეჯავახეთიsamtskhejavakheti=სამცხეჯავახეთის მხარეc
შიდა ქართლი shida kartli2შიდა ქართლის მხარე<12>
=სამეგრელოზემო სვანეთიsamegrelozemo svanetiPსამეგრელოზემო სვანეთის მხარე
თბილისიtbilisi

View File

@@ -0,0 +1,5 @@
GFT
arrondissement 9731arrondissement de cayennearrondissement of cayennecayenne<12>
arrondissement 9732#arrondissement de stlaurentdumaroni&arrondissement of saintlaurentdumaroni#arrondissement of stlaurentdumaronisaint laurent du maronisaintlaurentdumaroniN
arrondissement de saintgeorgesarrondissement of saintgeorges saintgeorges

View File

@@ -0,0 +1,16 @@
GG(
saint sampson saintsamson
st sampson
valele valle
saint saviour saintsauveurI
saint petersaint pierre du boissaintpierreduboisst pierre du bois
torteval&
saint martin saintmartin st martin#
saint peter portsaintpierreport
sarksercq
alderneyaurigny3
saint andrewsaintandrédelapommeraye st andrew%

View File

@@ -0,0 +1,21 @@
GH
bono region
northern east region
oti region
ahafo region
savannah region
western north region
bono east region%
greater accragreater accra region
ashantiashanti region
centralcentral region
easterneastern region
northernnorthern region
volta volta region
upper eastupper east region
upper westupper west region

View File

@@ -0,0 +1,9 @@
GL
qeqertalik
avannaata3
kujalleqkujalleq kommunekujalleq municipality0
qeqqataqeqqata kommuneqeqqata municipality9
sermersooq kommune
sermersooqsermersooq municipality

View File

@@ -0,0 +1,11 @@
GM
mansa konko
janjanbureh
banjul
basse
kanifing
brikama
kerewan
kuntaur

View File

@@ -0,0 +1,10 @@
GN
bokérégion de boké
conakryrégion de conakry
kindiarégion de kindia
région de faranahfaranah
kankanrégion de kankan
labérégion de labé
mamourégion de mamou'
région de nzérékoré nzérékoré

View File

@@ -0,0 +1,5 @@
GP?
arrondissement 9711arrondissement de basseterre
basseterreR
arrondissement 9712arrondissement de pointeàpitre grandeterre

View File

@@ -0,0 +1,13 @@
GQ
annobónU
bioko norte
bioko nordbioko norte province
biokonorteprovincia de bioko norteL
bioko sur bioko sudbioko sur provincebiokosurprovincia de bioko surB
centro surcentro sur province centrosurprovincia centro sur:
kientemkiéntemkiéntem provinceprovincia kiéntemD
litorallitoral provinceprovince du littoralprovincia litoral1
welenzasprovincia welenzaswelenzas province

View File

@@ -0,0 +1,11 @@
GR<12>
Nαποκεντρωμένη διοίκηση μακεδονίας θράκης4decentralized administration of macedonia and thracemakedonia thrakiμακεδονία θράκη<12>
]αποκεντρωμένη διοίκηση θεσσαλίας στερεάς ελλάδας;decentralized administration of thessaly and central greecethessalia sterea ellada*θεσσαλία στερεά ελλάδα<12>
.ήπειρος δυτική μακεδονία<decentralized administration of epirus and western macedoniaipeiros dytiki makedoniaipiros ditiki makedonia_αποκεντρωμένη διοίκηση ηπείρου δυτικής μακεδονίας+
άγιο όρος agio oros mount athosz
:αποκεντρωμένη διοίκηση αττικήςattiki&decentralized administration of attica αττική<12>
wαποκεντρωμένη διοίκηση πελοποννήσου, δυτικής ελλάδας και ιονίουJdecentralized administration of peloponnese, western greece and the ionian$peloponnisos dytiki ellada kai ionio#peloponnisos dytiki ellada ke ionioDπελοπόννησος δυτική ελλάδα και ιόνιο<12>
αιγαίοaigaio*decentralized administration of the aegeanegeo:αποκεντρωμένη διοίκηση αιγαίουt
8αποκεντρωμένη διοίκηση κρήτης%decentralized administration of cretekriti
κρήτη

View File

@@ -0,0 +1,29 @@
GT'
alta verapazalta verapaz department'
baja verapazbaja verapaz department)
chimaltenangochimaltenango department#
chiquimulachiquimula department<
departamento de escuintla escuintlaescuintla department!
guatemalaguatemala department)
huehuetenangohuehuetenango department
izabalizabal department
jalapajalapa department
jutiapajutiapa department
peténpetén department%
el progresoel progreso department)
el quichéquichéquiché department+
quetzaltenangoquetzaltenango department#
retalhuleuretalhuleu department)
sacatepéquezsacatepéquez department#
san marcossan marcos department
sololásololá department#
santa rosasanta rosa department+

View File

@@ -0,0 +1,11 @@
GW
bafatábafata
bolama
biombo
bissau
cacheu
gabugabú
oio
quinara
tombali

View File

@@ -0,0 +1,12 @@
GY
barimawaini
cuyunimazaruni
demeraramahaica
east berbicecorentyne
essequibo islandswest demerara
mahaicaberbice
pomeroonsupenaam
potarosiparuni
upper demeraraberbice
upper takutuupper essequibo

View File

@@ -0,0 +1,5 @@
HK
new territories新界B
hong konghong kong islandhongkong港島香港 香港島
kowloon九龍

View File

@@ -0,0 +1,22 @@
HN?
atlántidaatlántida departmentdepartamento de atlántida<
cholutecacholuteca departmentdepartamento de choluteca3
colóncolón departmentdepartamento de colón<
comayaguacomayagua departmentdepartamento de comayagua3
copáncopán departmentdepartamento de copán6
cortéscortés departmentdepartamento de cortésB
departamento de el paraíso el paraísoel paraíso departmentW
"departamento de francisco morazánfrancisco morazánfrancisco morazán departmentK
departamento de gracias a diosgracias a diosgracias a dios department?
islas de la bahiabay islands departmentislas de la bahía<
departamento de intibucá intibucáintibucá department6
departamento de lempiralempiralempira department3
departamento de la pazla pazla paz department?
departamento de ocotepeque
ocotepequeocotepeque department6
departamento de olanchoolanchoolancho departmentK
departamento de santa bárbarasanta bárbarasanta bárbara department0
departamento de vallevallevalle department-
departamento de yoroyoroyoro department

View File

@@ -0,0 +1,23 @@
HR&
zagrebačka županija
zagreb county4
krapinskozagorska županijakrapinazagorje county6
sisačkomoslavačka županijasisakmoslavina county(
karlovačka županijakarlovac county*
varaždinska županijavaraždin county@
"koprivničkokriževačka županijakoprivnicakriževci county:
bjelovarskobilogorska županijabjelovarbilogora county:
primorskogoranska županijaprimorjegorski kotar county*
ličkosenjska županijalikasenj county=
virovitičkopodravska županijaviroviticapodravina county6
požeškoslavonska županijapožegaslavonia county0
brodskoposavska županijabrodposavina county"
zadarska županija zadar county3
osječkobaranjska županijaosijekbaranja county1
šibenskokninska županijašibenikknin county5
vukovarskosrijemska županijavukovarsrijem county5
splitskodalmatinska županijasplitdalmatia county#
istarska županija
istria county;
dubrovačkoneretvanska županijadubrovnikneretva county*

View File

@@ -0,0 +1,14 @@
HT.
artiboniteartibonite department latibonit5
centrecentre departmentprovince du centresant-
grand'ansegrand'anse departmentgrandans
nordnord department?
département du nordestnordestnordest departmentnòdès
nippesnipnippes departmentF
département du nordouest nordouestnordouest departmentnòdwès8
departement de l'ouestlwèsouestouest department+
province du sudsidsudsud department;
département du sudestsidèssudestsudest department

Some files were not shown because too many files have changed in this diff Show More