文档章节

python免费获取shadowsocks账号

twisted3
 twisted3
发布于 2016/06/15 22:20
字数 282
阅读 383
收藏 0

python抓取免费账号并更新配置,依赖BeautifulSoup 和 requests

#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
get the acount from http://www.ishadowsocks.com for Shadowsocks
"""
import os
import requests
import json
from bs4 import BeautifulSoup as bs

path = os.path.dirname(__file__)
ss_conf = os.path.join(path, 'gui-config.json')
ss_url = 'http://www.ishadowsocks.com'

def ss_acount_fetch(url):
    """get the ss acount info from url

    :url: Shadowsocks acount website
    :returns: ss_server acount info
    """
    try:
        r = requests.get(url)
        soup = bs(r.content)
        divs = soup.find_all('div', {'class':'col-lg-4 text-center'}, limit=3)
        l = [];
        for idx, item in enumerate(divs):
            info = [i.text.split(':')[1].encode('utf-8')
                    for i in item.find_all('h4', limit=4)]
            l.append(dict(server=info[0],
                          server_port=int(info[1]),
                          password=info[2],
                          method=info[3],
                          remarks=str(idx)))
        return l
    except Exception as e:
        print e
        return None

def ss_conf_update(conf_path, acount_json):
    """update the Shadowsocks json config file
    """
    try:
        conf = json.load(open(conf_path, 'r'))
        if conf.has_key(u'configs'):
            conf[u'configs'] = acount_json
            json.dump(conf,
                      fp=open(conf_path, 'w'),
                      indent=4, sort_keys=True, ensure_ascii=False)
        else:
            return False
        return True
    except Exception as e:
        return False
# print
if __name__ == "__main__":
    acount_info = ss_acount_fetch(ss_url)
    print acount_info
    ss_conf_update(ss_conf, acount_info)

将该脚本放置于ss安装目录,命名为acount_update.py,将下面脚本保存为ss_run.bat:

@echo.
@echo %~dp0
@set PATH=%~dp0;%PATH%
python acount_update.py
start Shadowsocks.exe

双击运行ss_run.bat,会获取最新免费账号并启动Shadowsocks

© 著作权归作者所有

twisted3
粉丝 18
博文 35
码字总数 30995
作品 0
广州
后端工程师
私信 提问
python模块介绍-shadowsocks:穿越防火墙的快速隧道代理(实现自由冲浪)

Shadowsocks 是一个安全的socks5代理,用于保护网络流量,是一个开源项目。 由于Shadowsocks使用socks5协议和可自定义密码的工业级算法加密,使得流量在网络传输过程中不易被他人读取。但是使...

磁针石
2015/06/09
0
0
一键配置SS(转自 秋水逸冰) + BBR

本脚本适用环境 系统支持:CentOS 6+,Debian 7+,Ubuntu 12+ 内存要求:≥128M 关于本脚本 1、一键安装 Shadowsocks-Python, ShadowsocksR, Shadowsocks-Go, Shadowsocks-libev 版(四选...

bluefrankey
2018/12/28
0
0
Centos下Shadowsocks多用户后端Manyuser后台运行

Shadowsocks开机自动启动并后台运行 vi /etc/rc.local 用vi编辑器添加以下内容(先按键盘Ins键,切换到编辑模式): cd /root/shadowsocks/shadowsocks screen -dmS Shadowsocks python serv...

刘语彤
2015/08/08
0
0
亚马逊AWS EC2搭建shadowsocks服务

亚马逊AWS EC2搭建shadowsocks服务 注册aws账号,绑定信用卡,一般用双币卡,普通信用卡也可以,但是绑定提交后,会产生预授权费用,1美金左右 创建并启动实例,选择免费的实例,由于本人选择...

jackmanwu
2018/07/26
0
0
Centos搭建Shadowsocks的教程,并用浏览器成功访问Google

Centos搭建Shadowsocks的教程,并用浏览器成功访问Google 众所周知,Google在大陆基本无法访问,Dropbox等也陆续被封,局域网化愈来愈严重,不过对于大部分人来说这似乎没什么影响,该用百度...

iborder
2016/09/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

GatewayWorker 报错:stream_socket_server(): unable to connect to tcp://0.0.0.0:1238

GatewayWorker 报错:stream_socket_server(): unable to connect to tcp://0.0.0.0:1238 (Address already in use) 官方文档虽然有相同的问题,但是对我的问题没起作用…… 后面发现自己手贱...

wenzhizhong
昨天
2
0
REST接口

文章来源 https://zhuanlan.zhihu.com/p/28674721?group_id=886181549958119424 http://www.ruanyifeng.com/blog/2014/05/restful_api.html REST 对请求的约定 REST 用来规范应用如何在 HTTP......

Airship
昨天
3
0
Spring Cloud Config 统一配置中心

Spring Cloud Config 统一配置中心 一、统一配置中心 统一管理配置 通常,我们会使用配置文件来管理应用的配置。如一个 Spring Boot 的应用,可以将配置信息放在 application.yml 文件中,如...

非摩尔根
昨天
2
0
android ------ AAPT2 error: check logs for details解决方法

AAPT 是全称是 Android Asset Packaging Tool,它是构建 App,甚至是构建 Android 系统都必不可少的一个工具。它的作用是将所有资源文件压缩打包到Android APK 当中。我们在 Android SDK 目录...

切切歆语
昨天
2
0
今天的学习

今天学到了<select></select>标签: <label for="unittype">Select unit type: </label><select id="unittype" name="unittype" autofocus > <option value="1"> Miner </option> ......

墨冥
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部