Browsers 板


LINE

※ 引述《Kenqr (function(){})()》之铭言: : https://addons.mozilla.org/zh-TW/firefox/addon/ptt-web-enhanced/ : http://i.imgur.com/3tvnCvf.png
: 自己做的PTT网页版强化套件,所以来自产自销一下 刚才向别人推销时想到的: 试试能否做出同主题串接的功能(上一篇、下一篇、首篇、末篇、列表), 应该会很实用。 --
QR Code



※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 36.225.72.138
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Browsers/M.1505493414.A.15D.html
1F:推 HardRealTime: 文章列表大写S(误 09/16 00:46
2F:→ kuro: 我觉得可以把色码改成 Putty 的色码,看起来比较亮 09/16 01:30
3F:推 toploader: 感谢一楼,学到一招XD 09/16 10:56
4F:推 Kenqr: 这个应该只能用暴力法把前面几页的文章标题都抓进来搜寻? 09/16 13:07
5F:→ Kenqr: 有人知道手机app是怎麽连线PTT的吗? 09/16 13:07
6F:→ CP64: 手机 APP 不意外是用 telnet/ssh 拉内容 parse 吧 09/16 13:29
自己讲的自己写XD 写了个测试版放 GitHub,原原PO可以参考看看: https://github.com/danny0838/firefox-ptt-web-enhanced ※ 编辑: danny0838 (36.225.72.138), 09/16/2017 18:32:20
7F:推 s25g5d4: 最近有 websocket 支援罗 不过 parse 还是一样麻烦 09/17 23:18
8F:推 Kenqr: 印象中手机有专用的连线方式? 是我记错了吗 09/18 13:46
9F:→ Kenqr: article.js增加的行数都比原本的行数多了XD 09/18 15:56
10F:→ Kenqr: 这会送很多request吗? 我怕会对PTT造成负担 09/18 15:57
11F:推 Kenqr: 这篇会fetch 16次 感觉有点多XD 09/18 16:13
12F:→ Kenqr: 假如是使用者点选了才开始fetch的话 我想就比较没问题 09/18 16:14
13F:→ Kenqr: 感谢提供 我再仔细研究研究 09/18 16:15
增加负担是难免,不过对大多数站台而言, 使用者浏览网页时都会在背後送出许多 CSS, JS, 图片 等 request, 多一点的到二三十个是常态,而且传输内容很多是无法压缩的二进位档。 相较之下,这里用 fetch 送出 20 个左右的 request 及传输可压缩的纯文字内容 (经 gzip 压缩後大约 40~60 KB),或许不算太严重? 使用者点击再 fetch 也是个解法,不过由於 fetch 时间相当长, 如果使用者按一个钮要等 7~8 秒才有反应,用起来可能不会很爽... ※ 编辑: danny0838 (1.164.20.52), 09/18/2017 17:03:05
14F:推 Kenqr: 是这样没错,不过浏览器有cache 09/18 17:13
15F:→ Kenqr: 点进下面台电那篇,24个request只送了3个,其他都读cache 09/18 17:14
16F:推 Kenqr: 我们fetch的资料应该也可以自己暂存起来,就不用送那麽多次 09/18 17:16
PTT 文章更动很快,过几分钟可能文章列表就改变了。 另外,浏览器本身应该就会尽量使用快取的内容, 而且会根据伺服器传回 header 辨识内容是否有更新而决定是否使用快取。 ※ 编辑: danny0838 (1.164.20.52), 09/18/2017 18:21:48
17F:推 Kenqr: 对耶,都忘了fetch也会用cache 09/18 18:49
18F:→ Kenqr: 不过文章列表应该是动态产生的,会不会用cache可能要测看看 09/18 18:50
19F:→ Kenqr: 开了debug视窗,结果network页面跑不出东西... 09/18 18:51
20F:→ Kenqr: 文章列表也只有最新几页变动很快就是了,旧的还是可以快取 09/18 18:54
21F:推 Kenqr: 实测结果,文章列表不会被cache,每次fetch都会重抓@@ 09/19 18:40
22F:→ Kenqr: 所以这功能我会把它预设关闭,有需要的人再自行开启 09/19 18:42
糟糕...看来只好自己写快取功能了XD 目前预计新分页1~3分钟,旧分页10分钟 (旧分页的定义暂订用小於总页数 - 10,一页 20 篇,因此最近 200 篇以前的就会快取) 另一个问题:开启推文自动更新时,新的推文不会自动加上标示哦,有没有打算修?XD ※ 编辑: danny0838 (1.164.29.214), 09/19/2017 22:01:46
23F:→ Kenqr: 我没在用推文自动更新 也没人反映过 所以暂时不处理 09/19 23:47
24F:→ Kenqr: 要改的功能太多了 还是改天吧XD 09/19 23:48
目前有没有预计要改哪些功能? 我如果有空也许可以做做看 ※ 编辑: danny0838 (1.164.29.214), 09/20/2017 00:37:17
25F:推 stucode: 谢天XDD。其实之前也有注意到推文更新的部分,不过因为用 09/20 01:27
26F:→ stucode: 到的机会少,所以没做反映。 09/20 01:27
27F:推 Kenqr: 我想先把目前进度整理到GitHub上,不然我们各做各的到时候 09/20 11:49
28F:→ Kenqr: 应该很难整合 09/20 11:49
29F:→ Kenqr: https://i.imgur.com/31oewY5.png 09/20 11:57
30F:→ Kenqr: 预计要改的功能(的一部份) 09/20 11:57
31F:推 toploader: 文章页面增加部分选项的开关还满不错的 09/20 13:03
32F:→ toploader: 显示辅助资讯会占用画面空间,可是会用到的情况很偶尔 09/20 13:05
33F:→ toploader: 应该说主要是会吸走注意力 09/20 13:09
34F:推 Kenqr: 没错,像是楼层就满适合的 09/20 13:55
35F:→ Kenqr: 目前的设想是楼层和放大图片两个功能可以在文章页面开关 09/20 13:55
36F:→ Kenqr: 开关就放在下方导览列 09/20 13:56
37F:推 Kenqr: https://github.com/Kenqr/ptt-web-enhanced 放上GitHub了 09/20 18:34
38F:→ Kenqr: "避免套件重新启用时重复执行" 改成自动重整会不会比较好? 09/20 18:37
39F:→ Kenqr: 还有设定值改用sync storage,这样原本的设定值就消失了, 09/20 18:45
40F:→ Kenqr: 你觉得需要做个转换机制吗? 09/20 18:47
41F:推 toploader: 我个人的需求会希望楼层与推嘘文统计都能开关 09/20 19:31
42F:→ toploader: *都能在文章页面临时快速开启 09/20 19:32
43F:推 grimms42191: 楼上这样开开关关有什麽优点吗0.0? 09/20 21:39
44F:→ toploader: 开开关关......那两个功能对我来说不常用到,有用到的 09/20 21:43
45F:→ toploader: 又会很方便,但是只要出现在那里,就算是不需要那些 09/20 21:44
46F:→ toploader: 资讯,就是会去下意识瞄一下,引走注意力 09/20 21:44
47F:→ toploader: *有用到的时候又会很方便,能快速开启最好 09/20 21:45
48F:→ toploader: 该怎麽说...我不知道要怎麽再进一步解释XD 09/20 21:48
49F:→ toploader: 我现在没用到那些功能的时候,就是会去改套件设定, 09/20 21:50
50F:→ toploader: 麻烦的程度是还好,但是看到Kenqr已经有打算做这样一个 09/20 21:51
51F:→ toploader: 可以暂时开启功能的开关,对我来说就是意外之喜XD 09/20 21:52
52F:→ toploader: 让原本就在做的事情更方便了 09/20 21:53
53F:推 grimms42191: 了解XDD 09/20 22:06
我重新 fork 你的版本库并且把测试版本从主开发线拿掉了: https://github.com/danny0838/ptt-web-enhanced 1. 改成自动重整对使用者而言当然是比较好,不过技术上比较不好做, 所以先用比较简单的方法暂时解决问题。 如果你有意思实做咱们就再研究看看吧XD 2. 设定值改用sync storage导致原本设定值消失。 对使用者而言当然也是自动转换比较好,不过技术上比较麻烦就是... 我个人是认为反正选项很少,以後应该也不会常发生,让大家知道一下就可以了XD 3. 「自动连结讨论串」我先把预设值改为不勾选, 至於 cache 不晓得是否有确定做? 要的话我有空处理看看。 ※ 编辑: danny0838 (1.164.20.52), 09/20/2017 22:30:15
54F:推 Kenqr: 1.侦测到套件重新启用时reload就可以了吧? 09/21 11:21
55F:→ Kenqr: 2.好 那就不做XD 09/21 11:22
56F:→ Kenqr: 3.我觉得有需要。可以的话就麻烦你了 09/21 11:30
不晓得你有没有支援 Chrome 的打算? 如果有,也许早点做准备会比较好。 如果一开始没构思好,到时候打算支援双浏览器,要费的工会等比级数上升。 ※ 编辑: danny0838 (59.115.20.234), 09/21/2017 15:49:48
57F:推 Kenqr: 有想过,想说等功能做到一个段落再来考虑 09/21 22:20
58F:→ Kenqr: 以前没写过套件,一开始就要支援双浏览器的话, 09/21 22:21
59F:→ Kenqr: 可能会多花很多时间,所以就先专心做Fx版 09/21 22:21
60F:推 Kenqr: 同主题串接功能上架罗 09/22 13:53
61F:推 toploader: 重新设定後,退出到扩充套件列表再回去,设定值消失 09/22 15:02
62F:推 Kenqr: 这边测试是没有问题的@@ 我再检查看看 感谢 09/22 18:02
63F:推 toploader: 我也想说会不会跟上次一样,过一段时间自己好了XD 09/22 19:19
64F:→ toploader: 到现在这个时间尚未正常 09/22 19:19
65F:→ toploader: 另外按还原成预设值的按键没作用,按之前勾不同的设定 09/22 19:21
66F:→ toploader: 按之後勾选的设定都不会改变 09/22 19:22
67F:→ toploader: Firefox ESR 52.3.0(32位元) 09/22 19:23
68F:推 stucode: 推一个,同主题串接的功能实际试用起来还蛮不错的。另外 09/22 19:44
69F:→ stucode: 想请问一下是否时间或页数差距过大的同主题就不会串接了 09/22 19:44
70F:→ stucode: ?例如#1Pkn_Wcy (Little-Games)这篇。 09/22 19:45
71F:→ stucode: (P.S 55.0.3目前没有遇到设定上的问题。) 09/22 19:45
是的,因为 PTT 网页版没有提供真正的索引功能, 而让程式真的爬几千页显然不太合适, 因此目前只会抓前後 4 个列表(约 100 篇)。 ※ 编辑: danny0838 (1.164.19.182), 09/22/2017 20:49:15
72F:→ stucode: 了解,感谢。 09/22 21:18
73F:推 Kenqr: 因为Firefox 52不支援同步设定,先暂时改回使用本机设定 09/23 15:24
74F:→ Kenqr: 目前审核中,应该一会儿就审好了 09/23 15:25
75F:推 Kenqr: 忘了回2F: 自订颜色的功能我列入清单里了,谢谢建议 09/23 15:36
76F:推 toploader: 感谢Kenqr大大 09/23 16:51
不支援同步设定的版本执行 storage.sync 会出错吗? 我印象中也是能储存,只是不能透过网路同步而已, 也就是另一个空间比较小的 storage.local。 ※ 编辑: danny0838 (36.227.221.89), 09/23/2017 17:11:16
77F:推 Kenqr: 我有装52ESR测试,设定值读不到。错误讯息说要到 09/23 17:19
78F:→ Kenqr: about:config里开启才能使用storage.sync 09/23 17:19
79F:→ Kenqr: 另外storage.sync还是有东西,所以也不能直接用 09/23 17:21
80F:→ Kenqr: if(browser.storage.sync)来判断有没有支援 09/23 17:22
如果设定值开了,会有什麽功能上的异常吗? 如果没有,我个人是倾向还是用 sync,告知旧版使用者开设定值就好XD 毕竟我们还是要面向未来的。 ※ 编辑: danny0838 (36.227.221.89), 09/23/2017 17:24:54
81F:推 Kenqr: 还没测试,不过我觉得叫使用者开设定不算是个解法 09/23 18:08
82F:→ Kenqr: 应该会有不少人不想开/不知道要开/不会开 09/23 18:08
83F:→ Kenqr: 所以比较倾向侦测有支援就用sync,没有就用local 09/23 18:08
84F:→ Kenqr: 我只支援52起跳,已经很面向未来啦XD 09/23 18:09
85F:推 toploader: 感恩 09/23 19:02
我刚才检查了一下, Firefox < 51 是 storage.sync === undefined, Firefox >= 52 是 storage.sync !== undefined, 且有 webextensions.storage.sync.enabled 设定值, 这设定值在 Firefox 52 是预设为 false,不晓得哪版以後预设为 true。 而如果使用者没有手动改过设定值,升级为新版时会自动变更成新版的预设值, 也就是 Fx 52 使用者若未手动设成 true, 升级到预设为 true 的 Fx 版本也会自动变 true。 我想比较简单的处理方式是一律先跑 storage.sync, 出错就 catch 起来 fallback 到 storage.local。 你新版放了吗?我在 GitHub 没看到XD ※ 编辑: danny0838 (1.164.19.182), 09/23/2017 21:44:34
86F:推 Kenqr: 忘了push到GitHub XD 现在上去了 09/23 23:06
87F:→ Kenqr: WE文件是说53以上支援sync storage 09/23 23:06
88F:→ Kenqr: 跟我想的解法一样 这个我来处理就好了 感谢 09/23 23:11
89F:→ Kenqr: 1.5.2已上架 09/24 17:30
90F:→ Kenqr: Fx52设定储存在本机空间,53以上设定储存在同步空间 09/24 17:30







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灯, 水草

请输入看板名称,例如:Boy-Girl站内搜寻

TOP