Board logo

标题: [已解决] 30元求下载网站预览文字图 [打印本页]

作者: vance    时间: 2020-10-8 22:41     标题: [已解决] 30元求下载网站预览文字图

https://penji-gakushu.com/shop/detail/hakushu_kokushinjo/
这个网站预览的这个字体。
https://penji-gakushu.com/shop/f ... fff&font=000000
在这个网址上,把字号调到220,每次预览一个字,把整个字体每个字的预览图都下载下来。汉字7500多+符号大概8300左右。
请求大佬批量下载或者教我如何做。

这是文本。

微信支付
作者: went    时间: 2020-10-8 23:48

本帖最后由 went 于 2020-10-22 23:06 编辑

保存成test.bat
和pr6n.txt放到一起运行,图片保存在word文件夹中
  1. @cd /d "%~dp0" & mkdir "word" >nul 2>nul & powershell -c "Get-Content '%~0' | Select-Object -Skip 1 | Out-String | Invoke-Expression" & pause&exit
  2. [void][System.Reflection.Assembly]::LoadWithPartialName("System.Web")
  3. $Script:xhr=New-Object -ComObject "MSXML2.ServerXMLHTTP"
  4. $Script:count=0
  5. function Download-Image($key){
  6. $name = '{0:X4}' -f ([int]$key[0])
  7.     if(Test-Path (".\word\"+$name+".png") -ErrorAction SilentlyContinue){
  8.         Write-Host ("skip download: .\word\"+$name+".png")
  9.         return
  10.     }
  11. $png = [System.IO.File]::Create(".\word\"+$name+".png")
  12.     $url = "https://penji-gakushu.com/shop/font/preview/d/?font_id=33&str="+[System.Web.HttpUtility]::UrlEncode($key)+"&size=220&bg=ffffff&font=000000"
  13. $Script:xhr.abort()
  14.     $Script:xhr.open("GET",$url,$false)
  15.     $Script:xhr.send()
  16.     if($Script:xhr.status -ne 200) {   
  17.             Write-Host ("failed:"+$Script:xhr.status+" "+$Script:xhr.statusText) -ForegroundColor Red
  18.             $png.Dispose()
  19.             return
  20.     }
  21.     $bytes = $Script:xhr.responseBody
  22.     $png.Write($bytes,0,$bytes.Count)
  23.     $png.Name
  24.     $png.Dispose()
  25. $Script:count += 1
  26.     [System.Console]::Title = "" + $Script:count
  27. }
  28. Get-Content "pr6n.txt" -Encoding UTF8 | foreach { Download-Image -key $_.Trim() }
复制代码

作者: vance    时间: 2020-10-9 00:06

保存成test.bat
和pr6n.txt放到一起运行,图片保存在word文件夹中
went 发表于 2020-10-8 23:48



好像下下来的都是空的图?
作者: went    时间: 2020-10-9 00:49

回复 3# vance

win7这个我也不会弄,你只有等其它高人了
作者: vance    时间: 2020-10-9 08:50

回复  vance

win7这个我也不会弄,你只有等其它高人了
went 发表于 2020-10-9 00:49



    win10下可以是吗?
作者: zaqmlp    时间: 2020-10-9 10:16

下载第三方命令curl.exehttp://bcn.bathome.net/tool/haxx,7.60.0/curl.rar
  1. <# :
  2. cls
  3. @echo off
  4. cd /d "%~dp0"
  5. powershell -NoProfile -ExecutionPolicy bypass "Invoke-Command -ScriptBlock ([ScriptBlock]::Create([IO.File]::ReadAllText('%~f0',[Text.Encoding]::Default))) -Args '%~f0'"
  6. for /f "tokens=1,2 delims=|" %%a in ('type "%tmp%\url.txt"') do (
  7.     echo;"%%b"
  8.     curl.exe "%%a" -o "%%b"
  9.     echo;
  10. )
  11. pause
  12. exit
  13. #>
  14. $txtfile=".\pr6n.txt";
  15. $newfolder=".\result";
  16. $self=get-item -liter $args[0];
  17. $path=$self.Directory.FullName;
  18. $txtfile=$txtfile -replace '^\.',$path;
  19. $newfolder=$newfolder -replace '^\.',$path;
  20. if(-not (test-path -liter $txtfile)){Write-host ('"'+$txtfile+'" not found');exit;};
  21. if(-not (test-path -liter $newfolder)){[void](md $newfolder)};
  22. $tmpfile=($env:tmp)+'\url.txt';[System.Collections.ArrayList]$u=@();
  23. [void][Reflection.Assembly]::LoadWithPartialName('System.Web');
  24. $text=[IO.File]::ReadAllLines($txtfile,[Text.Encoding]::UTF8);
  25. for($i=0;$i -lt $text.count;$i++){
  26.     $word=[Web.HttpUtility]::UrlEncode($text[$i],[Text.Encoding]::UTF8);
  27.     $url='https://penji-gakushu.com/shop/font/preview/d/?font_id=33&str='+$word.toUpper()+'&size=220&bg=ffffff&font=000000';
  28.     $pngfile=$newfolder+'\'+($i+1).toString()+'.png';
  29.     $line=$url+'|'+$pngfile;
  30.     [void]$u.add($line);
  31. };
  32. [IO.File]::WriteAllLines($tmpfile,$u,[Text.Encoding]::GetEncoding('GB2312'));
复制代码

作者: vance    时间: 2020-10-9 10:59

下载第三方命令curl.exe
zaqmlp 发表于 2020-10-9 10:16



    谢谢,现在能下载了,就是下的图是按   1.2 .3 4这样命名的,能不能以图片对应的字符命名或者用unicode码命名呢?
作者: zaqmlp    时间: 2020-10-9 11:08

回复 7# vance 那你能不能加多10元
作者: vance    时间: 2020-10-9 11:19

回复 8# zaqmlp


    没问题。
作者: zaqmlp    时间: 2020-10-9 11:45

本帖最后由 zaqmlp 于 2020-10-9 12:15 编辑

回复 9# vance
  1. <# :
  2. cls
  3. @echo off
  4. cd /d "%~dp0"
  5. powershell -NoProfile -ExecutionPolicy bypass "Invoke-Command -ScriptBlock ([ScriptBlock]::Create([IO.File]::ReadAllText('%~f0',[Text.Encoding]::Default))) -Args '%~f0'"
  6. for /f "tokens=1,2 delims=|" %%a in ('type "%tmp%\url.txt"') do (
  7.     echo;"%%b"
  8.     curl.exe "%%a" -o "%%b"
  9.     echo;
  10. )
  11. pause
  12. exit
  13. #>
  14. $txtfile=".\pr6n.txt";
  15. $newfolder=".\result";
  16. $self=get-item -liter $args[0];
  17. $path=$self.Directory.FullName;
  18. $txtfile=$txtfile -replace '^\.',$path;
  19. $newfolder=$newfolder -replace '^\.',$path;
  20. if(-not (test-path -liter $txtfile)){Write-host ('"'+$txtfile+'" not found');exit;};
  21. if(-not (test-path -liter $newfolder)){[void](md $newfolder)};
  22. $tmpfile=($env:tmp)+'\url.txt';[System.Collections.ArrayList]$u=@();
  23. [void][Reflection.Assembly]::LoadWithPartialName('System.Web');
  24. $text=[IO.File]::ReadAllLines($txtfile,[Text.Encoding]::UTF8);
  25. for($i=0;$i -lt $text.count;$i++){
  26.     $word=[Web.HttpUtility]::UrlEncode($text[$i],[Text.Encoding]::UTF8);
  27.     [byte[]] $b=[Text.Encoding]::GetEncoding('UTF-32').GetBytes($text[$i]);
  28.     $uc='';
  29.     for($k=3;$k -ge 0;$k--){
  30.         $t=[Convert]::ToString($b[$k], 16).PadLeft(2,'0');
  31.         $uc=$uc+$t;
  32.     };
  33.     $uc=$uc -replace '^(00){1,}','';
  34.     $url='https://penji-gakushu.com/shop/font/preview/d/?font_id=33&str='+$word.toUpper()+'&size=220&bg=ffffff&font=000000';
  35.     $pngfile=$newfolder+'\'+$uc+'.png';
  36.     $line=$url+'|'+$pngfile;
  37.     [void]$u.add($line);
  38. };
  39. [IO.File]::WriteAllLines($tmpfile,$u,[Text.Encoding]::GetEncoding('GB2312'));
复制代码

作者: vance    时间: 2020-10-9 12:10

回复 10# zaqmlp


已转账40.88,请查收,万分感谢。
就是现在命名是 U+0000002D这样,能不能不要  前面的U+0000 ?
像这样,麻烦大佬再帮忙小改下,谢谢了。
作者: zaqmlp    时间: 2020-10-9 12:16

回复 11# vance
说明问题时要说清楚,最烦挤牙膏,钱少事多这种类型
已改
作者: vance    时间: 2020-10-9 12:22

回复 12# zaqmlp


    谢谢,,抱歉,纯小白一直以为unicode码就是4位




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2