标题: [已解决] 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文件夹中- @cd /d "%~dp0" & mkdir "word" >nul 2>nul & powershell -c "Get-Content '%~0' | Select-Object -Skip 1 | Out-String | Invoke-Expression" & pause&exit
- [void][System.Reflection.Assembly]::LoadWithPartialName("System.Web")
- $Script:xhr=New-Object -ComObject "MSXML2.ServerXMLHTTP"
- $Script:count=0
- function Download-Image($key){
- $name = '{0:X4}' -f ([int]$key[0])
- if(Test-Path (".\word\"+$name+".png") -ErrorAction SilentlyContinue){
- Write-Host ("skip download: .\word\"+$name+".png")
- return
- }
- $png = [System.IO.File]::Create(".\word\"+$name+".png")
- $url = "https://penji-gakushu.com/shop/font/preview/d/?font_id=33&str="+[System.Web.HttpUtility]::UrlEncode($key)+"&size=220&bg=ffffff&font=000000"
- $Script:xhr.abort()
- $Script:xhr.open("GET",$url,$false)
- $Script:xhr.send()
- if($Script:xhr.status -ne 200) {
- Write-Host ("failed:"+$Script:xhr.status+" "+$Script:xhr.statusText) -ForegroundColor Red
- $png.Dispose()
- return
- }
- $bytes = $Script:xhr.responseBody
- $png.Write($bytes,0,$bytes.Count)
- $png.Name
- $png.Dispose()
- $Script:count += 1
- [System.Console]::Title = "" + $Script:count
- }
- 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- <# :
- cls
- @echo off
- cd /d "%~dp0"
- powershell -NoProfile -ExecutionPolicy bypass "Invoke-Command -ScriptBlock ([ScriptBlock]::Create([IO.File]::ReadAllText('%~f0',[Text.Encoding]::Default))) -Args '%~f0'"
- for /f "tokens=1,2 delims=|" %%a in ('type "%tmp%\url.txt"') do (
- echo;"%%b"
- curl.exe "%%a" -o "%%b"
- echo;
- )
- pause
- exit
- #>
- $txtfile=".\pr6n.txt";
- $newfolder=".\result";
-
- $self=get-item -liter $args[0];
- $path=$self.Directory.FullName;
- $txtfile=$txtfile -replace '^\.',$path;
- $newfolder=$newfolder -replace '^\.',$path;
- if(-not (test-path -liter $txtfile)){Write-host ('"'+$txtfile+'" not found');exit;};
- if(-not (test-path -liter $newfolder)){[void](md $newfolder)};
-
- $tmpfile=($env:tmp)+'\url.txt';[System.Collections.ArrayList]$u=@();
- [void][Reflection.Assembly]::LoadWithPartialName('System.Web');
- $text=[IO.File]::ReadAllLines($txtfile,[Text.Encoding]::UTF8);
- for($i=0;$i -lt $text.count;$i++){
- $word=[Web.HttpUtility]::UrlEncode($text[$i],[Text.Encoding]::UTF8);
- $url='https://penji-gakushu.com/shop/font/preview/d/?font_id=33&str='+$word.toUpper()+'&size=220&bg=ffffff&font=000000';
- $pngfile=$newfolder+'\'+($i+1).toString()+'.png';
- $line=$url+'|'+$pngfile;
- [void]$u.add($line);
- };
- [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 - <# :
- cls
- @echo off
- cd /d "%~dp0"
- powershell -NoProfile -ExecutionPolicy bypass "Invoke-Command -ScriptBlock ([ScriptBlock]::Create([IO.File]::ReadAllText('%~f0',[Text.Encoding]::Default))) -Args '%~f0'"
- for /f "tokens=1,2 delims=|" %%a in ('type "%tmp%\url.txt"') do (
- echo;"%%b"
- curl.exe "%%a" -o "%%b"
- echo;
- )
- pause
- exit
- #>
- $txtfile=".\pr6n.txt";
- $newfolder=".\result";
-
- $self=get-item -liter $args[0];
- $path=$self.Directory.FullName;
- $txtfile=$txtfile -replace '^\.',$path;
- $newfolder=$newfolder -replace '^\.',$path;
- if(-not (test-path -liter $txtfile)){Write-host ('"'+$txtfile+'" not found');exit;};
- if(-not (test-path -liter $newfolder)){[void](md $newfolder)};
-
- $tmpfile=($env:tmp)+'\url.txt';[System.Collections.ArrayList]$u=@();
- [void][Reflection.Assembly]::LoadWithPartialName('System.Web');
- $text=[IO.File]::ReadAllLines($txtfile,[Text.Encoding]::UTF8);
- for($i=0;$i -lt $text.count;$i++){
- $word=[Web.HttpUtility]::UrlEncode($text[$i],[Text.Encoding]::UTF8);
- [byte[]] $b=[Text.Encoding]::GetEncoding('UTF-32').GetBytes($text[$i]);
- $uc='';
- for($k=3;$k -ge 0;$k--){
- $t=[Convert]::ToString($b[$k], 16).PadLeft(2,'0');
- $uc=$uc+$t;
- };
- $uc=$uc -replace '^(00){1,}','';
- $url='https://penji-gakushu.com/shop/font/preview/d/?font_id=33&str='+$word.toUpper()+'&size=220&bg=ffffff&font=000000';
- $pngfile=$newfolder+'\'+$uc+'.png';
- $line=$url+'|'+$pngfile;
- [void]$u.add($line);
- };
- [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://www.bathome.net/) |
Powered by Discuz! 7.2 |