标题: [文本处理] [已解决]如何从指定网页中提取信息来更改Shadowsocks代理软件配置文件中的指定内容? [打印本页]
作者: jjhy521 时间: 2016-4-8 22:02 标题: [已解决]如何从指定网页中提取信息来更改Shadowsocks代理软件配置文件中的指定内容?
本帖最后由 jjhy521 于 2016-4-9 19:57 编辑
先为刚刚发帖不符合版规 道歉 我简洁的说吧
下载网页
http://www.ishadowsocks.net
复制网页文本230~233行内容到gui-config.txt里信息进行替换
index.txt里230行~222行内容如下- <h4>C服务器地址:jp3.iss.tf</h4>
- <h4>端口:443</h4>
- <h4>C密码:17438512</h4>
- <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}
作者: jjhy521 时间: 2016-4-8 22:05
我复制文本后 会留下</h4> 等没用的信息
作者: codegay 时间: 2016-4-8 22:19
本帖最后由 codegay 于 2016-4-8 22:50 编辑
没编程思维的就不要只说怎么做了。就说想要你干嘛。给出网址和你想要的信息部分。
shadowsocks是代理,不是VPN。
作者: jjhy521 时间: 2016-4-8 22:27
回复 3# codegay
刚刚 那个帖子 被删了 里面写的很详细。。。
我以为不让发网页 所以删了网页而 改成文本
就是下载http://www.ishadowsocks.net网页后 提取230行到233行的SS配置信息 复制到gui-config.txt里进行替换 这样 我直接启动SS就能用了
作者: codegay 时间: 2016-4-8 22:53
回复 4# jjhy521
原贴也是几百行的代码。。。那不叫详细。
改了配置文件是要重启shadowsocks才生效的,你把重启shadowsocks的要求写进帖子里。这样自动程度可以更高一些。不用手动重启shadowsocks。
作者: jjhy521 时间: 2016-4-8 23:02
回复 5# codegay
恩 我的问题出现在复制上 复制文本:jp3.iss.tf 会变成 <h4>C服务器地址:jp3.iss.tf</h4> 不知道<h4>C服务器地址*******</h4> 多余文字 该怎么删除
作者: xp3000 时间: 2016-4-8 23:05
你那个是SS吧,
这个才是VPN,不过整点断开,
IP地址:45.79.83.149
用户名:i.vpno.net
密码地址:
http://45.79.83.149/mm.txt
作者: pcl_test 时间: 2016-4-8 23:33
本帖最后由 pcl_test 于 2016-4-10 12:42 编辑
- //&cls&cscript -nologo -e:jscript "%~f0"<gui-config.json&pause&exit
-
- var http = new ActiveXObject('MSXML2.XMLHTTP');
- http.open('GET', 'http://www.ishadowsocks.net/', false);
- http.send();
- var i = -1, txt = http.responseText.match(/<section id=\"free\">[\s\S]+?<\/section>/).toString().match(/[^>]*服务[^<]*|[^>]*端口[^<]*|[^>]*密码\s*[::][^<]*|[^>]*加密[^<]*/g);
- var config = WSH.StdIn.ReadAll().replace(/"server"[^,]+|"server_port"[^,]+|"password"[^,]+|"method"[^,]+/g, function($0){
- i++;var a = $0.split(':')[0], b = txt[i].split(/[\s::]+/)[1];
- return i==1?a+': '+b:a+': "'+b+'"';
- });
- WSH.echo(config);
复制代码
作者: jjhy520 时间: 2016-4-9 00:23
回复 8# pcl_test
好性感的批处理。。。如何写入到文件呢
作者: WHY 时间: 2016-4-9 14:06
本帖最后由 WHY 于 2016-4-11 22:45 编辑
- @if (0)==(0) echo off
- type gui-config.txt | cscript //nologo //e:jscript "%~f0"
- pause & exit
- @end
-
- var getContent = function(body){
- var ado = new ActiveXObject('ADODB.Stream');
- ado.Type = 1;
- ado.Open();
- ado.Write(body);
- ado.Position = 0;
- ado.Type = 2;
- ado.Charset = 'utf-8';
- var arr = ado.ReadText(-1).replace(/\r?\n/g, '\n').split('\n');
- return arr.slice(229, 233);
- }
-
- var http = new ActiveXObject('MSXML2.XMLHTTP');
- http.open('GET', 'http://www.ishadowsocks.net/', false);
- http.send();
-
- var a = getContent(http.responseBody);
- var b = ['"server"', '"server_port"', '"password"', '"method"'];
- var s = WSH.StdIn.ReadAll();
-
- for(var i=0; i<b.length; i++){
- a[i] = a[i].split(':')[1].split(/<\/h4>/i)[0];
- s = s.replace(
- new RegExp('^(' + b[i] + ')([^\r\n]*)', 'im'),
- function(s0, s1, s2){
- return s1 + ' : ' + (s2.indexOf('"')>=0 ? '"' + a[i] + '",' : a[i] + ',');
- }
- )
- }
- WSH.Echo(s)
复制代码
作者: xp3000 时间: 2016-4-9 15:59
回复 10# WHY
能不能详细解释下里面的参数?比如上传个参数作用的说明文档
作者: jjhy521 时间: 2016-4-9 19:55
本帖最后由 jjhy521 于 2016-4-9 19:57 编辑
回复 10# WHY
太棒了 前面代码改了下 自动写入gui-config.json 配合Shadowsocks.exe 运行完美- @if (0)==(0) echo off
- type gui-config.txt | cscript //nologo //e:jscript "%~f0" > gui-config.json
- exit
复制代码
作者: jjhy521 时间: 2016-4-22 21:19
WHY 发表于 2016-4-9 14:06
如何提取该网站呢 https://ssltz.top/ss_auto/
跟您的批处理一样 也是提取服务器信息输出文件
作者: pcl_test 时间: 2016-4-22 23:28
- mshta http://bathome.net/s/hta "web('https://ssltz.top/ss_auto').match(/服务器地址[^<]+|端口[^<]+|密码[^<]+|加密方式[^<]+/g).join('\r\n')"
复制代码
作者: jjhy521 时间: 2016-4-23 00:03
回复 14# pcl_test
mshta http://bathome.net/s/hta
改成mshta http://bathome.net/s/hta/
提示
作者: pcl_test 时间: 2016-4-23 00:06
回复 15# jjhy521
别用utf-8编码保存批处理文件
作者: jjhy521 时间: 2016-4-23 00:11
pcl_test 发表于 2016-4-8 23:33
我测试了您改的这段 是空白的 只是读取了格式
作者: jjhy521 时间: 2016-4-23 00:16
回复 jjhy521
别用utf-8编码保存批处理文件
pcl_test 发表于 2016-4-23 00:06
OK了 能看下 我楼上这个导出空白的问题吗
作者: pcl_test 时间: 2016-4-23 00:23
回复 18# jjhy521
配置文件又不一样
作者: jjhy521 时间: 2016-4-23 00:28
回复 19# pcl_test
非常感谢 我是配置文件弄错了 已经搞定 超级棒 PB被扣的老惨了
作者: jjhy521 时间: 2016-4-23 01:03
本帖最后由 jjhy521 于 2016-4-23 21:18 编辑
回复 19# pcl_test
我按照您的改了下 可以了 就是导出有问题 是空白的
主要是加了关闭Shadowsocks.exe进程会导致文件失效 如果删除关闭进程就正常 我应该怎么改比较好- taskkill /f /im Shadowsocks.exe
- //&cls&cscript -nologo -e:jscript "%~f0"<gui-config.ini > gui-config.json&start Shadowsocks.exe&exit
-
- var http = new ActiveXObject('MSXML2.XMLHTTP');
- http.open('GET', 'https://ssltz.top/ss_auto', false);
- http.send();
- var i = -1, txt = http.responseText.match(/服务器地址[^<]+|端口[^<]+|密码[^<]+|加密方式[^<]+/g);
- var config = WSH.StdIn.ReadAll().replace(/"server"[^,]+|"server_port"[^,]+|"password"[^,]+|"method"[^,]+/g, function($0){
- i++;var a = $0.split(':')[0], b = txt[i].split(/[\s::]+/)[1];
- return i==1?a+': '+b:a+': "'+b+'"';
- });
- WSH.echo(config);
复制代码
作者: jjhy521 时间: 2016-7-28 19:44
回复 19# pcl_test
能修复下吗 网站代码重新排版了 失效了 最好能说下 怎么改 我以后方便维护
作者: pcl_test 时间: 2016-7-28 21:31
回复 22# jjhy521
8楼网址改为 http://www.ishadowsocks.org
http://www.bathome.net/redirect. ... 4618&ptid=39985
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |