• Stars
    star
    807
  • Rank 56,489 (Top 2 %)
  • Language
    Python
  • Created over 4 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

https://tuixue.online/visa/ A Real-time Display of U.S. Visa Appointment Status Website 预约美帝签证各个签证处最早时间的爬虫

美国签证预约时间 自动化爬取+推送通知

https://tuixue.online/visa/

包含国内以及国外各种地区,目前包含:

  • CGI系统:中国、柬埔寨、新加坡、韩国、越南、巴拿马、澳大利亚、日本、尼泊尔、泰国、德国、多米尼加、哥斯达黎加、摩洛哥、印度
  • AIS系统:英国、加拿大、阿联酋、厄瓜多尔、法国、塞尔维亚、土耳其、希腊、哥伦比亚、墨西哥、巴哈马

Overview

目前采用的是部分前后端分离,姑且将其称之为前端服务器和爬虫服务器。整体逻辑为前端服务器定时向爬虫服务器发送数据请求,拉取到其本地、更新数据库、推送通知。

爬虫服务器使用Django构建,代码位于 api 文件夹下,CGI系统使用纯requests拉取数据,AIS系统由于有recaptcha2,使用requests和selenium/xdotool混合模式拉取数据(感谢z3dd1cu5

前端服务器采用nginx部署,使用python和爬虫服务器进行交互(详见lite_visa.py),和用户交互使用静态html或者php

前端服务器采用Nginx部署,使用FastAPI前后端分离,使用python和爬虫服务器进行交互(详见backend/visa_status_fetcher.py),使用mongo存储数据,前端网页使用React+Redux,展示表格使用EChart,评论区使用Disqus第三方服务,使用WebSocket+WebNotification实现网页版穿透通知(感谢BenjiTheC

邮件通知、QQ群和Telegram channel通知均使用python实现,详见backend/notifier.py

Usage

爬虫的使用请移步 api,包括各种请求字段,甚至免费的CGI验证码破解器也有(准确率大概98%)

前端部署详见 backendfrontend

API

https://api.tuixue.online/docs

请善待它orz,频繁请求会造成服务器卡死,建议一分钟一次请求(不过都做了网页版穿透通知了……直接开着网页或者加了QQ群、Telegram频道就能收到通知,为啥还要自己造个轮子呢?

如有需要请使用requests之类的包直接从api拿取数据,请不要用selenium定时刷新,否则直接封ip(因为会产生过多无用的WebSocket请求导致服务器莫名其妙挂掉……)

More Repositories

1

Undergraduate

Collection of undergraduate course homework and projects
C++
1,022
star
2

THU-CST-Cracker

清华大学计算机系课程攻略 Guidance for courses in Department of Computer Science and Technology, Tsinghua University
993
star
3

oi_slides

我的 OI 课件
472
star
4

learn2018-autodown

清华大学新版网络学堂课程自动下载脚本 / A python script to clone all files from learn.tsinghua.edu.cn
Python
270
star
5

Fast-Poisson-Image-Editing

A fast poisson image editing implementation that can utilize multi-core CPU or GPU to handle a high-resolution image input.
Python
250
star
6

Computational-Graphics-THU-2018

Computational Graphics - THU Spring 2018
C
175
star
7

mips32-cpu

奋战一学期,造台计算机(编译出的bit文件在release中,可以直接食用)
Verilog
122
star
8

router

造路由器 (清华大学 网络原理课程 2018-2019秋)
C++
67
star
9

CV

My Curriculum Vitae
TeX
51
star
10

os2019

操作系统 2019 ucore labs
C
48
star
11

Artificial-Neural-Network-THU-2018

4 small homeworks
Python
38
star
12

ml

Machine Learning repo
Jupyter Notebook
36
star
13

online-application-course-upload

Python
32
star
14

decaf-complier

编译原理 2018秋 6次PA
Java
30
star
15

CS294-112

CS 294-112 @ UCB Deep RL
Python
21
star
16

simple-news-android-app

Java课程大作业
Java
17
star
17

sudoku-qt5

A Qt5 Sudoku game
C++
14
star
18

GRErecite

GRE 再要你命3K 背单词小程序
Python
14
star
19

LAP-server

A simple Linux+Apache2+PHP server
PHP
9
star
20

DIP2018

Digital image processing (THU Spring 2017-2018)
C
6
star
21

Trinkle23897

4
star
22

VizDoom2018-Track1

Supplemental materials for "Playing FPS Games with Environment-Aware Hierarchical Reinforcement Learning", accepted by IJCAI'19
4
star
23

list_of_people

DIGITAL Command Language
3
star
24

csp

Trival solutions for trivial problems of CCF CSP.
C++
3
star
25

draughts-qt5

C++
1
star
26

mjc-mwe

C
1
star