标题: [文本处理] [己解决]求BAT代码,网页内容复制到文本? [打印本页]
作者: keshun 时间: 2019-3-8 23:28 标题: [己解决]求BAT代码,网页内容复制到文本?
这网站IE兼容性不好显示不全,用360浏览器打开就没问题。
批处理如何复制这个网页的全部内容到文本? 只要复制全部文字即可。
我是手动打开网页点全选、复制、粘贴,不知道有没有高人能用批处理做出来?- @wget -O a.html http://www.bathome.net/thread-34437-1-1.html
- @HtoX32c /IP a.html
复制代码
这代码试过可以,但对我这个网页就不行。
作者: flashercs 时间: 2019-3-9 10:36
动态网页不能静态获取了,需要模拟浏览器,用IE.app COM对象即可,但是此站点对IE的兼容太差了,右边内容Transactions无法显示;所以下载的网页页不全; 要想全面,去用selenium+chromeDriver模拟浏览器
给个IE.App的vbs脚本:
用法:vbs脚本名 url 保存.html- ' To fetch dynamic HTML document,and save to a file
- ' Usage: thisScript.vbs URL FilePathToSave
- Option Explicit
- Sub main()
- On Error Resume Next
- Dim objIE,objADO
- If WSH.Arguments.Count <> 2 Then Exit Sub
- Set objIE = WSH.CreateObject("InternetExplorer.Application", "evtIE_")
- Set objADO = CreateObject("ADODB.Stream")
- objIE.Visible = False
- objIE.Navigate2 WSH.Arguments(0)
- ShowError
- Do While objIE.ReadyState <> 4
- WSH.Sleep 10
- Loop
- With objADO
- .Mode = 3
- .Type = 2
- .Charset = objIE.document.charset
- .Open
- .WriteText objIE.document.documentElement.outerHTML
- .SetEOS
- .SaveToFile WSH.Arguments(1), 2
- .Close
- End With
- objIE.Quit
- ShowError
- Set objIE = Nothing
- Set objADO = Nothing
- End Sub
- Sub ShowError()
- If Err.Number <> 0 Then
- WSH.Echo "Err # " & Err.Number & vbNewLine & _
- "Description: " & Err.Description & vbnewline & _
- "Source: " & Err.Source
- Err.Clear
- End If
- End Sub
-
- main
复制代码
作者: flashercs 时间: 2019-3-9 11:47
其实我也不知我说的啥...........
作者: keshun 时间: 2019-3-9 22:53
谢谢楼上高手的回复,看来复制这个站点的问题还是比较难,也不知能不能搞定??谢谢大家!!
作者: keshun 时间: 2019-3-10 18:16
本帖最后由 keshun 于 2019-4-8 09:59 编辑
- mshta http://bathome.net/s/hta/?echo=false download('https://www','1.html')
- HtoX32c /IP 1.html
复制代码
这代码调用在线脚本不能下载加载数据,不知有没高手帮帮忙,谢谢!!!!
作者: keshun 时间: 2019-4-7 00:04 标题: 打开网页延时下载复制文字
本帖最后由 keshun 于 2019-4-8 09:59 编辑
网址:https://www
这网址IE打开显示不全,只能用360极速浏览器,网页动态数据要5-8秒才能加载完成。
360极速浏览器:
C:\Users\Administrator\AppData\Local\360Chrome\Chrome\Application\360chrome.exe
我现用VBS模拟键盘操作“全选”“复制”文字写入a.txt虽然能完成,每10分钟要激活当前窗口运行一次太影响电脑的其它操作,又会受到QQ微信的弹窗信息影响。- mshta http://bathome.net/s/hta/?echo=false download('https://www','1.html')
- HtoX32c /IP 1.html
复制代码
这代码动态加载数据文字复制不了。
网页加载完成后手动另存为网页全部,在用HtoX32c转就包含了动态数据,说明代码在没加载完成时就下载而无加载数据文字。
请求代码,要求打开网页延时下载复制文字,网页后台运行或最小化窗口运行,VBS或BAT都行,谢谢!!
作者: zaqmlp 时间: 2019-4-7 00:38
你要的是哪些动态数据?没必要下载整个网页吧
作者: keshun 时间: 2019-4-7 00:57
本帖最后由 keshun 于 2019-4-7 00:59 编辑
回复 2# zaqmlp
整个网页数据文字复制下来,在经过文本处理就行了,条件越多越复杂,对效率要求不高。
作者: zaqmlp 时间: 2019-4-7 01:19
回复 3# keshun
你要哪些数据可以直接抓取,下载整个网页更麻烦
作者: keshun 时间: 2019-4-7 01:31
回复 4# zaqmlp
就单个网页显示的文字内容,我现用VBS模拟键盘就能做到,只是不理想。
作者: codegay 时间: 2019-4-7 04:02
如果你需要别人帮你,你只需要说清楚你真正需要的是什么数据。比如截图把你想要的数据区圈出来。
作者: whiter 时间: 2019-4-7 11:54
动态加载的数据??
你打开页面然后按F12,选择network,最后查看哪个网址请求是你想要的, 单独拿出来请求就行, 用curl下载之
作者: keshun 时间: 2019-4-7 12:15
本帖最后由 keshun 于 2019-4-8 09:59 编辑
回复 12# whiter
[attach]11910[/attach][attach]11910[/attach]
我想获取写入a.txt的文字内容如上图,买委与卖委各200组的3列动态数据,按F12,选择network显示的都是英文看不懂啊,谢谢!!
作者: whiter 时间: 2019-4-7 12:31
那你用火狐浏览器,火狐的F12是中文的
作者: keshun 时间: 2019-4-7 13:04
本帖最后由 keshun 于 2019-4-7 13:18 编辑
回复 14# whiter
我试了下里面网址请求连接都不对,动态数据刷新速度很快会不会直接数据库读取的,这个网页本身就是纯数据无图片无视频,我本想复制显示文字不要求同步更新,这样会不会把问题复杂化了?谢谢!!
作者: CrLf 时间: 2019-4-7 13:37
- @echo off
-
- curl.exe "https://www.okex.me/v2/spot/markets/deep-deal?symbol=eos_usdt" >data.json
-
- mshta http://bathome.net/s/hta/index.html?string "obj=JSON.parse(type('data.json'));obj.data.asks.map(function(e,i){return e.price+'\t'+e.totalSize})" >买入.txt
- mshta http://bathome.net/s/hta/index.html?string "obj=JSON.parse(type('data.json'));obj.data.bids.map(function(e,i){return e.price+'\t'+e.totalSize})" >卖出.txt
复制代码
作者: whiter 时间: 2019-4-7 13:37
回复 15# keshun
你怎么试的? 网页里所有的数据请求都在那了, 会不会是参数什么的传的不对了
作者: CrLf 时间: 2019-4-7 14:35
本帖最后由 CrLf 于 2019-4-7 23:58 编辑
如果直接用第三方工具 jq 和 json2csv 的话:- @echo off
-
- curl.exe "https://www.okex.me/v2/spot/markets/deep-deal?symbol=eos_usdt" >data.json
- <data.json jq -cM .data.asks[] | json2csv -k price,totalSize >买入.txt
- <data.json jq -cM .data.bids[] | json2csv -k price,totalSize >卖出.txt
复制代码
作者: keshun 时间: 2019-4-7 14:48
本帖最后由 keshun 于 2019-4-8 10:00 编辑
回复 16# CrLf
十分感谢,代码效果很好!!
请教个问题复制代码
这网址在那能找到,能否告知,我在源代码和F12都没看到。复制代码
这个网址也麻烦帮我下,也是要复制相似的买卖动态数据,谢谢!!
作者: keshun 时间: 2019-4-7 15:20
本帖最后由 keshun 于 2019-4-8 10:00 编辑
回复 17# whiter
[attach]11911[/attach]- 巡查用的
- https://www
- 不知在那找到的,原地址
- https://www
- ,麻烦你也帮我找找,谢谢!!
复制代码
作者: codegay 时间: 2019-4-7 16:39
回复 20# keshun
他网站上面有API接口说明。
作者: keshun 时间: 2019-4-7 17:45
本帖最后由 keshun 于 2019-4-8 10:01 编辑
回复 21# codegay
谢谢回复,我去网站看了API接口说明,只是看不明白。能否帮我把下面两个网页的动态数据连接网址帮我查查?谢谢!!复制代码
作者: xczxczxcz 时间: 2019-4-7 21:36
本帖最后由 xczxczxcz 于 2019-4-7 21:53 编辑
KAO 挖矿啊!
swapContractId=106- https://www.okex.me/v2/perpetual/pc/public/instruments/EOS-USD-SWAP/candles?granularity=900&size=1000
- https://www.okex.me/v2/perpetual/pc/public/contracts/EOS-USD-SWAP/depth
复制代码
contractType=4复制代码
这类好像不应该发。
作者: keshun 时间: 2019-4-7 22:57
本帖最后由 keshun 于 2019-4-8 09:57 编辑
十分感谢各位高手的指点,己解决,谢谢!!!
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |