Browsers 板


LINE

标题: [心得] 将 opera mini 储存的网页转换成 HTML 时间: Sun Feb 21 17:56:38 2016 好读版: http://myweb.ncku.edu.tw/~c34031328/diary/obml.html [Opera_mini] 是 opera 公司推出的适合手机的浏览器, 但其实 *她* 并不解析 [HTML] 。 她的运作必需依赖 Opera 公司的伺服器, 将网页由 HTML 格式转换成 **OBML** 格式; 同时大幅缩小网页大小。 後再由 opera mini 解析、排版。 固她才可以 [绕过色情守门员] 。 [绕过色情守门员]: http://myweb.ncku.edu.tw/~c34031328/diary/man.html OBML 格式全名 *Opera Binary Markup Language* , 是由 opera 公司所开发,针对 HTML 简化格式。 她并不全是文字,其中内含了一些二进位码, 用来表示某段文字是的格式。(像超连结、标题、颜色。) 尝试以纯文字读取会有部份乱码。 (或全部乱码。我以 [more] 或 [less] 读取时 二进位会显示为乱码,文字就保有文字。 别的工具有没有这麽聪明我就不确定了。) 另外我不知道为什麽, 我的 OBML 档副档名不是 `*.obml` , 而是 `*.obml16` . 反正没差,可以看就好了,以下仍称 `*.obml` . 但读者请自行确认自己的是 `*.obml` 或 `*.obml16` . ## 前言 ## 在旧手机上只用 opera mini . 而又旧手机除了上网也没什麽能做的; 固上面就积了一堆 *储存* 来离线看的网页。 最近换手机,想把这 *脱拉库* 东西抓出来, 转换成方便的格式。於是搜寻了一下,记录流程。 ## 取出 obml 档 ## 首先取得 root 权限;没有的话用 adb 也可以。 ( adb 能取得 root 权限。) 目标是把存在内部空间的 obml 档复制出来。 以我来说路径是: `/data/data/com.opera.mini.android/files/*.obml` 我的档案名是一串七或八个数字,副档名 obml . ### 使用 adb ### ** 无须 root 权限 ** $ adb root pull "/data/data/com.opera.mini.android/files" # 拉出整个目录 $ adb root pull "/data/data/com.opera.mini.android/files/*.obml" # 拉出特定档案 不会 adb 的请自己 google. ( 或等我有空写一篇文章;但不做别人做过的事是我的原则:P 网路上这麽多教学了……。) ### 使用 root explore ### ** 必须取得 root 权限 ** 随便找一款支援 root 的档案管理员, 进到你的 opera mini 的资料夹。 四处看看,把副档名是 obml 的档案都复制到 sdcard 或其它你方便的地方。 然後再复制回电脑里。 ## 将 `*.obml` 转换成 `*.html` ## google 大神与 SlackOverFlow , 都只推荐用 Java 虚拟机器可以在电脑跑 Opera mini . 但我认为这样还是很不方便。 希望可以转成 HTML , PDF , 或者纯文字也可以。 於是在 github 上找到这东西: [obml-parser] . 可以把 OBML 转换回 HTML . (同场加映,同位作者写的 [OBML 语法介绍] 。 如果有兴趣的话可以读。) [obml-parser]: https://github.com/grawity/hacks/blob/master/hacks/Text/obml-parser [OBML 语法介绍]: https://gist.github.com/grawity/702b31cddcc5a6622724/a00d1b072e7d7344488e4d1b6cae7ab3a14b2399 ** 用 [python] 写得,所以你得要有 python 才行。 ** (或等某个好心人把它转成可执行档; 别看我,我不会 python . ) 请用 python3 或以上,我也不知道为什麽。 (我说过我不会 python. ) 因为我 [fedora] 23 , 直接打 python 是对应到 python2.X , 然後 python2.X 说我的档案没有宣告编码。(???) python3 就不会;所以我指令下 python3 . (感觉是如果档案内有用到 *非 ASCII* 要宣告, 不然 python2.X 直译器会报错。) python3 obml-parser *.obml ls # 显示 *.obml *.obml.html # 原本只有 `*.obml` , # 多出 `*.obml.html` . 在放 obml 的目录下会生成一个 `*.obml.html` 的档案, 可以直接用浏览器看。 ## 糟糕的 HTML ## 打开後和用 opera mini 看一样……; 就是只有 6, 7 公分宽, [像这样] 。 如果不给看或看起来很奇怪,可以看一下原始码。 它的 HTML 很糟……,完全没有结构。 (没有 `<html>` , `<head>` , `<body>` , 全部混在一起。) [像这样]: http://myweb.ncku.edu.tw/~c34031328/study/html/opera_mini/54613806.obml16.html 而且还宣告了 `<!DOCTYPE html>` ..., 要求浏览器以标准的语法来剖析该文件。 (如果没有宣告,浏览器会以 [怪异模式] 来剖析 HTML . 这样就算语法不正确,看起来也 *还可以* 。) ### tidy 拯救混乱的 HTML ### [tidy] 是 w3c 开启的一开源专案, 该程式会尝试修正不正确的 HTML 语法; 并重新排版。如果你的浏览很挑食, 拒绝 *obml-parser* 所生出的 HTML , 可以试试这招。 (虽然我的 firefox 看起来都一样。) tidy 前: http://myweb.ncku.edu.tw/~c34031328/study/html/opera_mini/54613806.obml16.tidy.html tidy 後: http://myweb.ncku.edu.tw/~c34031328/study/html/opera_mini/54613806.obml16.html ** 注意! ** *我的版本* 的 tidy 会预设将输入视为 ASCII , 但很遗憾 *obml-parser* 所转出来的是 **UTF-8** . 所以你需要指定编码;或指定不处理编码问题。 tidy -raw *.obml.html > *.obml.tidy.html # 不处理编码 tidy -utf8 *.obml.html > *.obml.tidy.html # 指定 UTF-8 -- sent from mySQL. --



※ 发信站: 梦之大地 (ccns.cc), 来自: 140.116.249.140
※ 文章网址: telnet://ccns.cc/
1F:推 foo:这作者……02/30 22:66
2F:推 void:奇文共赏!!02/30 28:19
--



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 140.116.102.127
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Browsers/M.1455853537.A.3E6.html ※ 编辑: Gold740716 (140.116.102.127), 02/20/2016 12:25:50
3F:→ abram: 专业! 02/21 15:24
改写并转载到 mobilecomm 板,但好像还是没什麽人气……。 我以为很多人用 opera mini 的……。 请问板主 m 文是? ※ 编辑: Gold740716 (140.116.102.127), 02/21/2016 21:34:54
4F:推 Go2: 觉得你很厉害 所以M文保留 XD 02/21 23:42







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Tech_Job站内搜寻

TOP