找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 30337|回复: 6

[文本处理] 批处理如何获取网页title

[复制链接]
发表于 2020-4-26 22:21:40 | 显示全部楼层 |阅读模式
我看别人都是用 *.htm
----------------
案例:

我的思路是  能不能直接从 curl -vv www.baidu.com
中直接获取这个title

<title>百度一下,你就知道</title>

假设这个,是 -

<title>百度一下 - 你就知道</title>

只截取`百度一下`这四个字
发表于 2020-4-27 11:37:16 | 显示全部楼层
这个你干脆写爬虫得了.方便
发表于 2020-4-27 18:40:15 | 显示全部楼层
回复 1# hxx
  1. curl -vv www.baidu.com 2>nul | grep -Po "<title>.*</title>" | gawk -F "[<>-]" "{print $3}" > "结果.txt"
复制代码
地址:
http://bcn.bathome.net/s/tool/index.html?key=curl
http://bcn.bathome.net/s/tool/index.html?key=grep
http://bcn.bathome.net/s/tool/index.html?key=gawk

评分

参与人数 1技术 +1 收起 理由
hxx + 1 热心管理员

查看全部评分

发表于 2020-4-28 09:12:09 | 显示全部楼层
本帖最后由 xp3000 于 2020-4-28 18:07 编辑

方法2:
所需三个工具,放入C:\Windows\System32
http://bcn.bathome.net/tool/haxx,7.59.0/curl.exe
http://bcn.bathome.net/tool/iconv.exe
http://bcn.bathome.net/tool/3.0/grep.exe
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "delims=" %%i in  ('curl "www.baidu.com" ^| iconv -f utf-8 -t gbk ^| grep -oP "(?<=<title>)[^<-]+(?=(,|-).+<\/title>)"') do (
  4. echo %%i
  5. )
  6. pause
复制代码

评分

参与人数 1技术 +1 收起 理由
hxx + 1 热心群众

查看全部评分

发表于 2020-4-28 09:19:27 | 显示全部楼层
  1. @if (0)==(0) @echo off
  2. setlocal enabledelayedexpansion
  3. (curl "http://book.zongheng.com/showchapter/470520.html" | iconv -f utf-8 -t gbk |cscript -nologo -e:jscript "%~f0")>>提取章节名称.txt
  4. pause & goto :EOF
  5. @end
  6. WSH.echo(WSH.StdIn.ReadAll().match(/第[零一二三四五六七八九十百千廿卅卌0-9]+[章节卷] [^ <>]+/mg).join('\r\n'));
复制代码
借个帖子,如何先提取后替换?
发表于 2020-4-28 10:00:14 | 显示全部楼层
win10
  1. @echo off
  2. set "url=www.baidu.com"
  3. set "char=',','-'"
  4. powershell -c "if((Invoke-WebRequest -UseBasicParsing -Uri '%url%').Content -match '(?<=<title>).*?(?=</title>)'){$Matches[0].Split(@(%char%))[0]}"
  5. pause&exit
复制代码

评分

参与人数 1技术 +1 收起 理由
hxx + 1 写法好厉害

查看全部评分

发表于 2020-4-28 17:15:34 | 显示全部楼层
本帖最后由 netdzb 于 2020-4-28 17:30 编辑

回复 3# Batcher

管理员,命令能否解释一下?
grep的非贪婪模式匹配得到一个字符串,然后gawk的分割符有4个吗?
中间的管道 | 表示什么?

这个代码写三行可以吗? 我这里没有看懂。
分割符号里面的方括号表示什么?
谢谢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-19 19:47 , Processed in 0.020347 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表