Board logo

标题: [网络连接] 【已解决】请问批处理如何提取下载好的网页源码中特定内容? [打印本页]

作者: xyqylong    时间: 2021-12-2 10:53     标题: 【已解决】请问批处理如何提取下载好的网页源码中特定内容?

本帖最后由 xyqylong 于 2021-12-8 15:24 编辑

下载好的网页源码如下格式
imageView2\u002F2\u002Fw\u002F1080\u002Fformat\u002Fjpg","width":1000,"height":1000,"fileId":"bbfc2021-9f86-5999-e853-f2a823184519","traceId":"b892879b-fb4a-3bee-bfe1-79252e137acd"},{"url":"\u002F\u002Fci.xiaohongshu.com\u002F7d4e86fc-09b4-801b-d03a-097a174b120f?imageView2\u002F2\u002Fw\u002F1080\u002Fformat\u002Fjpg","width":1000,"height":1000,"fileId":"7d4e86fc-09b4-801b-d03a-097a174b120f","traceId":"8e295f78-f40d-3f93-9616-d23f8a113f47"}],"cover":{"url":"\u002F\u002Fci.xiaohongshu.com\u002F617e2e1a-f617-c3d1-5e21-49648c5aca42

其中会包含一个或多个 traceId 我需要提取traceId后的值
作者: xyqylong    时间: 2021-12-2 10:54

需要提取  traceId":"b892879b-fb4a-3bee-bfe1-79252e137acd"}  这段内容中 b892879b-fb4a-3bee-bfe1-79252e137acd 部分
作者: xyqylong    时间: 2021-12-2 10:59

源码中包含一个或多个traceId 这是指向图片的真实地址,如果多图的话就需要全部提取出来
作者: Batcher    时间: 2021-12-2 12:45

回复 1# xyqylong


    请把下载后的网页文件上传到阿里云盘或百度网盘,以便测试代码。或者给出真实的网址,我自己下载网页也行。
作者: xyqylong    时间: 2021-12-2 13:05

回复 4# Batcher

链接:https://www.aliyundrive.com/s/uCh9XtgJWzY

上传了一个阿里云盘连接
作者: yhcfsr    时间: 2021-12-2 15:05

  1. #&cls&@powershell -c "Get-Content '%~0' | Select-Object -Skip 1 | Out-String | Invoke-Expression" & pause&exit
  2. $file='.\XHS.txt'
  3. [regex]::Matches((gc -LiteralPath $file -Encoding UTF8),'"traceId":"(.*?)"}')|%{($_.Value) -replace '"traceId":"(.*)"}','$1'}>'traceid.txt'
复制代码

作者: flashercs    时间: 2021-12-2 16:11

  1. <#*,:&cls
  2. @echo off
  3. pushd "%~dp0"
  4. powershell -NoProfile -ExecutionPolicy RemoteSigned -Command ". ([ScriptBlock]::Create((Get-Content -LiteralPath \"%~0\" -ReadCount 0 | Out-String ))) "
  5. popd
  6. pause
  7. exit /b
  8. #>
  9. $htmlfile = "解析json1.txt"
  10. $re = [regex]"(?<traceId>(?<traceId_1>`"traceId`"\s*:\s*)(?<traceId_2>`".*?`"(?<!\\`")|null))"
  11. $txt = [System.IO.File]::ReadAllText($htmlfile)
  12. $re.Matches($txt) | ForEach-Object { $_.Groups['traceId_2'].Value.Trim('"') }
复制代码

作者: xyqylong    时间: 2021-12-6 14:52

回复 6# yhcfsr


    非常感谢,完美的实现了我的需求




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