标题: 简单需求 获取关键词搜索结果数量 [打印本页]
作者: zzz1230 时间: 2022-2-4 23:02 标题: 简单需求 获取关键词搜索结果数量
本帖最后由 zzz1230 于 2022-2-5 02:18 编辑
需求很简单,但是不知道用bat能不能实现
我这里有约5000个关键词,需要用百度学术( https://xueshu.baidu.com/ )或者谷歌学术(https://scholar.google.com.hk/)去搜索关键词,然后记录搜索结果数量。
例如:关键词为cancer,百度学术搜索( https://xueshu.baidu.com/s?wd=cancer ),搜索结果提示“找到约15,600,000条相关结果”,然后记录15600000即可。
不知道价格多少合适,如果可以实现,请大佬自行报价,谢谢!
作者: flashercs 时间: 2022-2-5 13:18
- <#*,:&cls
- @echo off
- cd /d "%~dp0"
- powershell -NoProfile -ExecutionPolicy RemoteSigned -Command ". ([ScriptBlock]::Create((Get-Content -LiteralPath \"%~0\" -ReadCount 0 | Out-String ))) "
- pause
- exit /b
- #>
- # 功能:百度学术记录关键词搜索结果的数量.
-
- # 关键词文件
- $srcfile = "words.txt"
- # 结果文件
- $outfile = "words_out.txt"
- # 百度学术
- $urlbase = "https://xueshu.baidu.com/s?wd={0}"
-
- $renums = [regex]"找到约(.*)条相关结果"
- try {
- $proc = Start-Process -FilePath "iexplore.exe" -ArgumentList "-embedding" -PassThru
- [void]$proc.WaitForInputIdle()
- } catch {
- $_ | Write-Host -ForegroundColor Red
- } finally {
- $proc.Dispose()
- }
- $shellApp = New-Object -ComObject Shell.Application
- while ($true) {
- $ie = $shellApp.Windows() | Where-Object { $_.FullName -like "*\Internet Explorer\iexplore.exe" -and [string]::IsNullOrEmpty($_.LocationURL) }
- if ($null -ne $ie) {
- break
- }
- Start-Sleep -Milliseconds 200
- }
- Get-Content -Path $srcfile | ForEach-Object {
- try {
- Write-Host $_ -ForegroundColor Yellow
- $uri = New-Object System.Uri -ArgumentList @(($urlbase -f $_))
- $ie.Navigate($uri.AbsoluteUri)
- while ($ie.Busy) {
- Start-Sleep -Milliseconds 100
- }
- $pso = '' | Select-Object -Property Keyword, ResultCount
- $pso.Keyword = $_
- $node_toolbar = $ie.document.getElementById("toolbar")
- $m = $renums.Match($node_toolbar.innerText)
- if ($m.Success) {
- $pso.ResultCount = [long]$m.Groups[1].Value
- }
- $pso
- } catch {
-
- }
- } | Format-Table -AutoSize | Out-File -FilePath $outfile -Encoding utf8
- $ie.Quit()
复制代码
作者: zzz1230 时间: 2022-2-5 17:08
回复 2# flashercs
您好,首先非常感谢您的回复。其次,我复制代码后,已经在同一目录下新建了一个words.txt(内有关键词 一行一个),但是测试的时候报错。如图,您看下是什么问题导致的。此外,由于我没有设置预算(因为我也不知道多少合适),您看50元可以吗?如果可以的话,麻烦发下wv或者zfb的收款码,我转给您
作者: flashercs 时间: 2022-2-5 18:07
回复 3# zzz1230
批处理一定要保存为ANSI编码; 我签名有联系方式 qq或wx;
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |