[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] [已解决]如何从指定网页中提取信息来更改Shadowsocks代理软件配置文件中的指定内容?

本帖最后由 jjhy521 于 2016-4-9 19:57 编辑

先为刚刚发帖不符合版规 道歉 我简洁的说吧
下载网页
http://www.ishadowsocks.net

复制网页文本230~233行内容到gui-config.txt里信息进行替换

index.txt里230行~222行内容如下
  1.                     <h4>C服务器地址:jp3.iss.tf</h4>
  2.                     <h4>端口:443</h4>
  3. <h4>C密码:17438512</h4>
  4.                     <h4>加密方式:aes-256-cfb</h4>
复制代码
gui-config.txt文本内容如下[code]{
"configs" : [
  {
"server" : "www.ithubs.cn",
"server_port" : 443,
"password" : "1234567",
"method" : "aes-256-cfb",
"remarks" : ""}

],
"strategy" : null,
"index" : 0,
"global" : false,
"enabled" : false,
"shareOverLan" : false,
"isDefault" : false,
"localPort" : 1080,
"pacUrl" : null,
"useOnlinePac" : false,
"availabilityStatistics" : false}
1

评分人数

我复制文本后 会留下</h4> 等没用的信息

TOP

本帖最后由 codegay 于 2016-4-8 22:50 编辑

没编程思维的就不要只说怎么做了。就说想要你干嘛。给出网址和你想要的信息部分。

shadowsocks是代理,不是VPN。
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

回复 3# codegay


    刚刚 那个帖子 被删了 里面写的很详细。。。
我以为不让发网页 所以删了网页而 改成文本
就是下载http://www.ishadowsocks.net网页后 提取230行到233行的SS配置信息 复制到gui-config.txt里进行替换 这样 我直接启动SS就能用了

TOP

回复 4# jjhy521


    原贴也是几百行的代码。。。那不叫详细。
改了配置文件是要重启shadowsocks才生效的,你把重启shadowsocks的要求写进帖子里。这样自动程度可以更高一些。不用手动重启shadowsocks。
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

回复 5# codegay


    恩 我的问题出现在复制上 复制文本:jp3.iss.tf     会变成 <h4>C服务器地址:jp3.iss.tf</h4>          不知道<h4>C服务器地址*******</h4> 多余文字 该怎么删除

TOP

你那个是SS吧,
这个才是VPN,不过整点断开,

IP地址:45.79.83.149
用户名:i.vpno.net
密码地址:
http://45.79.83.149/mm.txt

TOP

本帖最后由 pcl_test 于 2016-4-10 12:42 编辑
  1. //&cls&cscript -nologo -e:jscript "%~f0"<gui-config.json&pause&exit
  2. var http = new ActiveXObject('MSXML2.XMLHTTP');
  3. http.open('GET', 'http://www.ishadowsocks.net/', false);
  4. http.send();
  5. var i = -1, txt = http.responseText.match(/<section id=\"free\">[\s\S]+?<\/section>/).toString().match(/[^>]*服务[^<]*|[^>]*端口[^<]*|[^>]*密码\s*[::][^<]*|[^>]*加密[^<]*/g);
  6. var config = WSH.StdIn.ReadAll().replace(/"server"[^,]+|"server_port"[^,]+|"password"[^,]+|"method"[^,]+/g, function($0){
  7.     i++;var a = $0.split(':')[0], b = txt[i].split(/[\s::]+/)[1];
  8.     return i==1?a+': '+b:a+': "'+b+'"';
  9. });
  10. WSH.echo(config);
复制代码

TOP

回复 8# pcl_test


    好性感的批处理。。。如何写入到文件呢

TOP

本帖最后由 WHY 于 2016-4-11 22:45 编辑
  1. @if (0)==(0) echo off
  2. type gui-config.txt | cscript //nologo //e:jscript "%~f0"
  3. pause & exit
  4. @end
  5. var getContent = function(body){
  6.     var ado = new ActiveXObject('ADODB.Stream');
  7.     ado.Type = 1;
  8.     ado.Open();
  9.     ado.Write(body);
  10.     ado.Position = 0;
  11.     ado.Type = 2;
  12.     ado.Charset = 'utf-8';
  13.     var arr = ado.ReadText(-1).replace(/\r?\n/g, '\n').split('\n');
  14.     return arr.slice(229, 233);
  15. }
  16. var http = new ActiveXObject('MSXML2.XMLHTTP');
  17. http.open('GET', 'http://www.ishadowsocks.net/', false);
  18. http.send();
  19. var a = getContent(http.responseBody);
  20. var b = ['"server"', '"server_port"', '"password"', '"method"'];
  21. var s = WSH.StdIn.ReadAll();
  22. for(var i=0; i<b.length; i++){
  23.     a[i] = a[i].split(':')[1].split(/<\/h4>/i)[0];
  24.     s = s.replace(
  25.         new RegExp('^(' + b[i] + ')([^\r\n]*)', 'im'),
  26.         function(s0, s1, s2){
  27.             return s1 + ' : ' + (s2.indexOf('"')>=0 ? '"' + a[i] + '",' : a[i] + ',');
  28.         }
  29.     )
  30. }
  31. WSH.Echo(s)
复制代码

TOP

回复 10# WHY


    能不能详细解释下里面的参数?比如上传个参数作用的说明文档

TOP

本帖最后由 jjhy521 于 2016-4-9 19:57 编辑

回复 10# WHY


    太棒了 前面代码改了下 自动写入gui-config.json  配合Shadowsocks.exe 运行完美
  1. @if (0)==(0) echo off
  2. type gui-config.txt | cscript //nologo //e:jscript "%~f0" > gui-config.json
  3. exit
复制代码

TOP

WHY 发表于 2016-4-9 14:06


    如何提取该网站呢 https://ssltz.top/ss_auto/
    跟您的批处理一样 也是提取服务器信息输出文件

TOP

  1. mshta http://bathome.net/s/hta "web('https://ssltz.top/ss_auto').match(/服务器地址[^<]+|端口[^<]+|密码[^<]+|加密方式[^<]+/g).join('\r\n')"
复制代码

TOP

回复 14# pcl_test


    mshta http://bathome.net/s/hta
改成mshta http://bathome.net/s/hta/

提示

TOP

返回列表