标题: [已解决]依表提取表内所有网页的链接 [打印本页]
作者: hlzj88 时间: 2017-9-1 22:57 标题: [已解决]依表提取表内所有网页的链接
首先请参见 http://www.bathome.net/thread-44783-1-8.html 。当我修改为依表批量提取时,不仅慢,还有的提取不到链接。因此在此麻烦你了。
win7
依据先好先得原则。。谢谢。表在附件里
附件留下,有兴趣的坛友不妨试试看看。
作者: hlzj88 时间: 2017-9-1 23:03
回复里请留下微信号。我好找你。
作者: hlzj88 时间: 2017-9-2 23:10
经过一天努力,终于自己能用三种链接方式得到绝大部分含链接的文件。但是问题来了,里面的内容没有汉字,愁死个人。
咋就这么难呢。
点击这里,希望你能帮助一下。
本贴结贴。
作者: happy886rr 时间: 2017-9-2 23:38
本帖最后由 happy886rr 于 2017-9-3 09:15 编辑
回复 3# hlzj88 - 1>1/* :
- @echo off
- REM 开启变量延迟
- setlocal enabledelayedexpansion
-
- REM 设置头条网址
- set "URL=http://www.toutiao.com/"
-
- REM 遍历文件源,提取每个头条ID
- for /f "tokens=1,2 delims=|" %%i in (4.txt) do (
- set/a "i+=1"
- set "LIST[!i!]=%%i#%%j.html"
- )
-
- REM 获取列表长度
- set "LIST_SIZE=!i!"
-
- REM 已下载计数
- set "ALREADY_GET=0"
-
- REM 主体循环
- :LOOP
- REM 遍历列表数组
- for /l %%N in (1,1,!LIST_SIZE!) do (
- if not "!LIST[%%N]!"=="" (
- for /f "tokens=1,2 delims=#" %%i in ("!LIST[%%N]!") do (
- echo GET[!ALREADY_GET!/!LIST_SIZE!]: "%%j"
- if not exist ".\%%j" (
- cscript -nologo -e:jscript "%~f0" "%URL%" "%%i" "%%j"
- )
- if exist ".\%%j" (
- set/a "ALREADY_GET+=1"
- set "LIST[%%N]="
- echo OK.
- )
- )
- )
- )
- REM 执行完毕
- if !ALREADY_GET! equ !LIST_SIZE! (
- set/p =END.
- exit/b
- )
- goto :LOOP
- */
- //////////////////////////////////////////////////////////////
- function GetTTList(hostURL)
- {
- var xmlHTTP = new ActiveXObject('Msxml2.XMLHTTP');
- xmlHTTP.open('GET', hostURL, false);
- xmlHTTP.send();
- respJson=xmlHTTP.responseText;
- if(respJson)
- {
- var fso = new ActiveXObject('Scripting.FileSystemObject');
- var f = fso.openTextFile(WScript.arguments(2), 2, true);
- var parseData = (eval('('+respJson+')'))['data'];
- if(parseData.length > 0)
- {
- for(var i=0; i<parseData.length; i++)
- {
- f.writeLine('<a href="' + WScript.arguments(0) + parseData[i]['source_url'] + '" target="_blank">' + '[' + eval('i+1') + '].' + parseData[i]['title'] + '</a>' + '<br>');
- }
- }else{
- f.writeLine('<b>Not found any articles!</b>');
- }
- f.close();
- }
- }
- var hostURL = WScript.arguments(0) + '/c/user/article/?page_type=1&user_id=' + WScript.arguments(1) + '&max_behot_time=0&count=256';
- GetTTList(hostURL);
- //////////////////////////////////////////////////////////////
复制代码
作者: hlzj88 时间: 2017-9-3 07:14
本帖最后由 hlzj88 于 2017-9-3 10:49 编辑
回复 4# happy886rr
看到你发帖时间,很晚的,谢谢。
你的代码经使用,能够成功下载所有的链接。非常感谢。
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |