Archive for the tag '自动翻页'

8 28 2008

AutoPager简明攻略六-杂七杂八

Published by muzuiget under Firefox

AutoPager简明攻略系列文章
这里是一些AutoPager小技巧
修改翻页提示样式
翻页提示样式就是在设置里“一般”标签那3个样式啦,有没有发现部分网站显示出来的翻页提示文件有些时候大,有些时候小?这是因为默认样式中用了相对数值。这里有我的修改版。

搞定了字体忽大忽小
把绿色改为Goole那个蓝色
分隔符上下加了点空白

“加载中”提示的样式
position: fixed; z-index: 2; font-size: 12px; bottom: 1px; right: 20px;padding: 1px; background: #D5DDF3 none repeat scroll 0%; display:none;
分页符样式
clear:both; line-height:20px; background:#D5DDF3; text-align:center;margin-top:20px;margin-bottom:20px;
翻页提示样式
line-height:normal;width:190px;position: fixed; z-index: 2; font-size: 12px; bottom: 1px; right: 20px;padding: 1px; background: #D5DDF3 none repeat scroll 0%; display:none;

No responses yet

8 28 2008

AutoPager简明攻略五-规则分享

Published by muzuiget under Firefox

AutoPager简明攻略系列文章
如果你创建你规则,那么你能够导出你的规则给别人分享。如果你不会创建规则,那么就导入别人创建好的规则就行了。可以保留自带的“Chinalist.xml”里面有适合国内的规则。
导出规则
在设置对话框里,选择一条或多条规则(按Shift)点击导出就行了,可以选择导出到剪贴板或文件。描述一栏写上是什么网站。
导入规则
也可以从剪贴板和文件导入,很简单。
分享规则
作者的博客有一个地方让你提交创建好的规则(需要登录),或者直接点击“发布”按钮。当别人更新的是后就能用上你的规则,更新的规则在“blogcomment.xml”这个文件里,不过太多自己不用的更新有点拖慢浏览速度,自己看着办。
帮忙创建
希望访客能创建自己常去的网站规则,如果不行,那么就留言给我吧,不过事先声明:

不是任何网站都帮的,比如那些不水产的网站,拜托不要贴上来,万一让UbuntuCn倒掉我就罪大恶极了,一经发现立马删除的,不作通知。
一些让我不爽的网站也不帮,比如最近开口水战的,一切看我个人喜好。
一些网站布局很变态,规则难写,所以不是100%成功了,如果这样,我只能说抱歉,只能另谋高就了。
如果评论中有网址,很容易被博客系统当垃圾评论过滤掉,所以,贴网站的名字也行,我会去Google。或者用中文句号“。”代替那个点“.”

我的规则
下边几个就行在第一篇文章里的例子的规则了。
Google网页
<autopager>
<site><urlPattern>http://www.google.com/search*</urlPattern>
<guid>470CE2C4-0766-1F96-7227-A362-950C-EB48</guid>
<urlIsRegex>false</urlIsRegex>
<margin>2</margin>
<enabled>true</enabled>
<enableJS>true</enableJS>
<quickLoad>false</quickLoad>
<fixOverflow>false</fixOverflow>
<owner>muzuiget</owner>
<contentXPath>//div[@id='res']</contentXPath>
<linkXPath>//b[contains(text(),'下一页')]</linkXPath>
<containerXPath></containerXPath>
<desc>Google网页</desc>
</site>
</autopager>
Google图片
<autopager>
<site><urlPattern>http://images.google.com/images*</urlPattern>
<guid>27486483-287C-6043-507C-73D6-E665-C183</guid>
<urlIsRegex>false</urlIsRegex>
<margin>2</margin>
<enabled>true</enabled>
<enableJS>true</enableJS>
<quickLoad>false</quickLoad>
<fixOverflow>false</fixOverflow>
<owner>muzuiget</owner>
<contentXPath>//div[@id='ImgContent']</contentXPath>
<linkXPath>//b[contains(text(),'下一页')]</linkXPath>
<containerXPath></containerXPath>
<desc>Google图片</desc>
</site>
</autopager>
ESPNSTAR中文网
<autopager>
<site><urlPattern>http://www.espnstar.com.cn/*.htm</urlPattern>
<guid>1F4DC801-98CE-7ACE-5A0E-2572-AA3A-06E0</guid>
<urlIsRegex>false</urlIsRegex>
<margin>2</margin>
<enabled>true</enabled>
<enableJS>true</enableJS>
<quickLoad>false</quickLoad>
<fixOverflow>false</fixOverflow>
<owner>muzuiget</owner>
<contentXPath>//div[@id='text']</contentXPath>
<linkXPath>//a[contains(text(),'下一页→')]</linkXPath>
<containerXPath></containerXPath>
<desc>ESPNSTAR中文网</desc>
</site>
</autopager>
腾迅体育
<autopager>
<site><urlPattern>http://sports.qq.com/*.htm</urlPattern>
<guid>2A41269B-BB3F-8D7D-E522-A411-E519-93CC</guid>
<urlIsRegex>false</urlIsRegex>
<margin>2</margin>
<enabled>true</enabled>
<enableJS>true</enableJS>
<quickLoad>false</quickLoad>
<fixOverflow>false</fixOverflow>
<owner>muzuiget</owner>
<contentXPath>//div[@id='ArticleCnt']</contentXPath>
<linkXPath>//div[@id='tool']/div[@class='fl']/a/img</linkXPath>
<containerXPath></containerXPath>
<desc>腾迅体育</desc>
</site>
</autopager>
太平样游戏
<autopager>
<site><urlPattern>http://pcnews.pcgames.com.cn/*.html</urlPattern>
<guid>60A11AB9-A81D-EA86-4A68-BA77-6BB8-B667</guid>
<urlIsRegex>false</urlIsRegex>
<margin>2</margin>
<enabled>true</enabled>
<enableJS>true</enableJS>
<quickLoad>false</quickLoad>
<fixOverflow>false</fixOverflow>
<owner>muzuiget</owner>
<contentXPath>//div[@class='artContent']</contentXPath>
<linkXPath>//a[@class='page_next']</linkXPath>
<containerXPath></containerXPath>
<desc>太平洋游戏</desc>
</site>
</autopager>
华军软件搜索
<autopager>
<site><urlPattern>http://search2.newhua.com/search.asp*</urlPattern>
<guid>536BC865-5F3D-62FA-B373-A4F6-5044-0193</guid>
<urlIsRegex>false</urlIsRegex>
<margin>2</margin>
<enabled>true</enabled>
<enableJS>true</enableJS>
<quickLoad>false</quickLoad>
<fixOverflow>false</fixOverflow>
<owner>muzuiget</owner>
<contentXPath>//body/div/table[@class='p9']/tbody/tr[2]</contentXPath>
<linkXPath>//font[contains(text(),'下一页')]</linkXPath>
<containerXPath></containerXPath>
<desc>华军软件搜索</desc>
</site>
</autopager>
VeryCD搜索
<autopager>
<site><urlPattern>http://www.verycd.com/search/folders/Linux</urlPattern>
<guid>5DA4F273-5409-3916-055D-1DD8-4C3B-342A</guid>
<urlIsRegex>false</urlIsRegex>
<margin>2</margin>
<enabled>true</enabled>
<enableJS>true</enableJS>
<quickLoad>false</quickLoad>
<fixOverflow>false</fixOverflow>
<owner>muzuiget</owner>
<contentXPath>//div[@id='results-wrapper']</contentXPath>
<linkXPath>//a[contains(text(),'下一页 >>')]</linkXPath>
<containerXPath></containerXPath>
<desc>VeryCD搜索</desc>
</site>
</autopager>
巴巴变图片
<autopager>
<site><urlPattern>http://www.bababian.com/picturedetail.sl*</urlPattern>
<guid>492CE975-F72C-103E-6045-9A88-BB05-8CE6</guid>
<urlIsRegex>false</urlIsRegex>
<margin>2</margin>
<enabled>true</enabled>
<enableJS>true</enableJS>
<quickLoad>false</quickLoad>
<fixOverflow>false</fixOverflow>
<owner>muzuiget</owner>
<contentXPath>//table[tbody/tr/input/@id='pictureID' and tbody/tr/input/@name='pictureID']</contentXPath>
<linkXPath>//a[@class='linkImg' and contains(text(),'下一张>')]</linkXPath>
<containerXPath></containerXPath>
<desc>巴巴变图片</desc>
</site>
</autopager>
Ubuntu中文论坛
<autopager>
<site><urlPattern>http://forum.ubuntu.org.cn/viewtopic.php*</urlPattern>
<guid>03E7A3B9-FF66-BD7C-DE41-5E5D-8DC4-029D</guid>
<owner>muzuiget</owner>
<contentXPath>//div[@id='pagecontent']</contentXPath>
<linkXPath>//a[contains(text(),'下一页')]</linkXPath>
<desc>Ubuntu中文论坛</desc>
</site>
</autopager>
煎蛋
<autopager>
<site><urlPattern>http://jandan.net/*</urlPattern>
<guid>5C5B6E6C-2519-8B50-C192-3840-0675-3872</guid>
<owner>muzuiget</owner>
<contentXPath>//div[@id='content']</contentXPath>
<linkXPath>//a[contains(text(),'Next')]</linkXPath>
<desc>煎蛋</desc>
</site>
</autopager>
驱动之家硬件
<autopager>
<site><urlPattern>http://hardware.mydrivers.com/*</urlPattern>
<guid>A22FBC4D-52DE-30F3-75B1-ADCF-081D-289E</guid>
<owner>muzuiget</owner>
<contentXPath>//tr[td[@class='f14_black']]</contentXPath>
<linkXPath>//a[contains(text(),'下一页')]</linkXPath>
<desc>驱动之家硬件</desc>
</site>
</autopager>

No responses yet

3 28 2008

AutoPager简明攻略一-软件简介

Published by muzuiget under Firefox

AutoPager简明攻略系列文章
在网上浏览大家总会点过带有“下一页”这样的链接吧,当文章内容太长网站就会将内容分成几页,以加快网页显示速度。不过在现在已是宽带时代了,电脑配置都强悍很多,网页大小长短不在考虑之列了,怎么花最少时间和精力来更多信息才是重点,何况一些网站追求流量,无聊的内容充满页面,广告漫天飞舞,一页正文内容才那么一小块地方,一页一段话或一张图,要人不停点击“下一页”来浏览下面的内容,特惹人厌,浪费用户的流量、内存、CPU、时间、金钱、生物能,脑细胞、大好青春。
有没有办法对付网站这种损招呢?不影响浏览体验的前提下,把几页的内容合成一页中去,减少点击次数。就有这么一种Firefox的扩展专干这种事了,那就是接下来介绍的AutoPager,中文就叫做自动翻页。如果你还不懂有什么效果,请看下图。

看到没有,下一页的内容给附加到当前页面中去了,这是动态加载的,你用Google搜索,在前面几条结果就找到你所需要的,那就最好。如果找不到,当你向下滚动页面时快到底部时,第二页的内容马上附加到下面,省去点击“下一页”的步骤,当快看完第二页,也就是快到页面底部时,又自动附加上第三页,直到最后一页为止。是不是很方便?或许你会说,Google由一次显示100条结果的功能啊,嗯,Google是有这个功能,但是如果在第一页就找到结果,而无需看剩余的9页,那么这9页不是白白显示了,同时也浪费多了9倍的时间和内存,岂不是很不值?Google图片呢,其它网站呢?
Google图片“Firefox3”

ESPN的《英超次轮最佳阵容 克枪神后卫红军救世主》

一页一图的典型代表腾讯体育《10大好马吃回头草:舍瓦领衔 荷兰传奇二进宫》

太平洋游戏的《更残酷,更真实!《使命召唤5》详细试玩报告》

华军软件园搜索“Firefox”

VeryCD搜索“Linux”

Bababian的一个用户的Firefox图片

论坛也行,《学习linux几点忠告》

理论上,只要写好规则,任何网页AutoPager都能正确附加上内容,网页看起来一体,布局不会乱,实现浏览网页一拖到底,畅通顺快得像半夜开车。害怕规则不会写或懒得写?把网页给出了来,让别人帮你写就行了,一切都很简单。好了,介绍废话这么多,如果还有兴趣,就请继续看下一篇文章《AutoPager简明攻略二-基本使用》吧。
如果你有使用同类型的软件经验请继续看
自动翻页其它软件
Firefox扩展repagination
这是另外一个扩展,不需要创建规则,在“下一页”连接上点击右键,可以选择把后面几页都附加到当前页面底部,但附加的是整个页面,不太好用。
Greasemonkey脚本
有三个翻页脚本可用,Pagerization、jautopagerize、autopagerize。比较多人用的是Pagerization,除了翻页外,还能去掉Goole的广告,和改Google图片的图片地址为实际地址。这个方法很多博客都介绍过,装上后,Google和百度都能自动翻页了。这几个脚本,爽固然很爽,但是仅限于于部分站点,如搜索引擎,Youtube等等外国站点,因为规则都是外国人写的。顺便提一下,也有人创建了Chinalist,添加进去Pagerization里面就行了,支持部分国内网站。
如果要支持自己经常去的站点,那么就要把网站的规则添加进去,而问题就是不知道如何写规则,还有是怎么添加规则和去哪里添加规则。规则都是高手写好的,只能寄望有朝一日高手能把自己想要网站规则添加进去。这不知道等到何年何月,最好就能自己动手丰衣足食。AutoPager已经包含了Pagerization的规则,Pagerization行的AutoPager也行。
AutoPager跟Pagerization一样,附加的是实际有用的部分,而不是像repagination那样把整个个页面附加到底部,而且还很方便地添加规则。
所以,如果你喜欢Pagerization,那么试试AutoPager吧,绝对不会令你失望的。

No responses yet

3 04 2008

AutoPager简明攻略四-辅助工具

Published by muzuiget under Firefox

AutoPager简明攻略系列文章
其实AutoPager自带的“自动翻页工作室”已经很好用了,如果网页实在混乱难写,也有几个Firefox扩展XPath生成和测试工具:
XPath Checker:一个轻量级的XPath测试工具,功能跟AutoPager自带的差不多,不过预览窗口是浮动的,只能预览一个表达式。

XPather:上边那个是轻量级,那么这个可以算是重量级了,功能丰富,很专业,高级用户使用。

XPath Checker和XPather用法相同,在网页点击右键,选择“View XPath”或“Show in XPather”,这样就打开一个测试窗口了。生成的是鼠标当前位置元素的XPath,不像AutoPager那样有“框”显示选择生成哪部分.
Adblock Plus: Element Hiding Helper:也能辅助编写,没有搞错,的确是那个广告过滤扩展Adblock Plus的辅助扩展,如果你不信,看我操作,还是用Google图片来说明吧,首先启动Adblock Plus: Element Hiding Helper,这样页面出现一个方框,跟AutoPager相似,但是不会把页面变形,按w放大方框,n缩小方框,选择全部图片那个框,左下角显示 “div,id:ImgContent”时,然后按s键,接着出现设置对话框

这样就成了,过滤规则是“images.google.com#DIV(id=ImgContent)”,然后点击预览,消失的部分就是想要附加在下一页 的部分了。但这个不是XPath,但结构相似,改一下即可

把“#”之前改为“//”
把“(”改为“[@”
把“=”那个单词加上单引号
把“(”改为“]”
即改为“//DIV[@id='ImgContent']”
再还句话说也就是把xxx.xxx.xxx#aaa(bbb=ccc)
改为
//aaa[@bbb='ccc']
就可以添加到AutoPager里面去。

Firebug:也是可以的,也算能预览,不过是直接取绝对路径的。

Aardvark:这东西就是上边几个都有的红框选择器,可以看源代码,临时去掉某部分。

2 responses so far

3 04 2008

AutoPager简明攻略三-创建规则

Published by muzuiget under Firefox

AutoPager简明攻略系列文章
上篇文章说了AutoPager的基本用法和优化,这篇分享一下如何添加自定义规则。其实添加自定义规则是很简单的,基本上不需要XPath知识,我之前也不会XPath,只是根据默认的规则摸索出来的。后来看了一下XPath 教程还有XPath 教程再熟悉一下而已。
准备工作

先禁用翻页效果,按《AutoPager简明攻略二-基本使用》里所说的把所有默认规则全部删掉,包括“Chinalist.xml”。
默认规则删掉后可以通过在线更新恢复,所以请先关掉AutoPager的自动更新功能。
规则多了有影响网页浏览速度,所以只用自己添加最好。

一个网站规则添加的顺序是

打开要待添加网页,打开第一页。
添加一个网址表达式,当地址栏的网址符合表达式时就调用相应的规则,网址表达式支持通配符或者正则表达式。
找出当前指向下一页的连接,指带有“下一页,next,>>”的连接。创建XPath表达式。
找出每一页不同的部分,也就是所要附加的部分,也是创建XPath表达式。

就用Google网页和Google图片搜索来做例子吧!
Google网页实际操作:

随便用Google搜个词。
然后再按钮栏的“自动翻页”按钮打开“自动翻页工作室”侧边栏,没有这个按钮,右键工具栏“定制”把它拉出来,或者在菜单“查看”,“侧栏”,“自动翻页”调出。
“自动翻页工作室”实在是个好东西,以前我写的这篇文章所用的步骤实在烦人,就是状态栏图标右键,那样一步一步设置。这个东西不知道在哪个版本开始就有了,或者一开始就有了,还是我以前没发现,如果你用我以前的步骤来添加规则的话,那就是跟我一起用了笨方法了,被我忽悠了,不好意思,这东西很爽,比以前的方法更加方便简单。这步就是废话。
“ 自动翻译工作室”字样下面是不是有5个按钮,先点那个第一个放大镜,之后就出现下图的效果。这个按钮表示“自动识别”,也就是创建规则,看到侧边栏了的几行表达式没有?那就是自动生成的,而网页内容就是预览表达式。看不懂,好吧,自动识别功能目前还不太完善,所以我们的手动识别。

按第四个按钮,也就是清除设置,侧边栏的代码就会消失了。
刷新一下网页,那个橙色的边框就会消失了。
这次点第二个按钮,表示选择“下一页的”链接,按下后网页会出现红色的边框,看到左边的按键提示没有,通过“w”和“n”键可以放大缩小边框,其实就是选择网页元素而已,应该选择那个不部分呢,就是“下一页”字样啦,如果有2个或以上“下一页”的链接,随便选一个。选好后按“s”键,不要点击鼠标,不然会跳到下一页。接着你会见到侧边栏上半出现了行代码,先不用管。

再按第三个按钮,表示选择下一页所附加的内容,使用方法使用同上一步,一个大框把所有需的内容“包”住,那个红框是跟随鼠标的,如果页面太长,需要滚上滚下来查看是否选择好,可以按“p”键来暂停红框鼠标跟随,再按一下就继续跟随鼠标。注意一下红色框左下角的英文,等下再说明,确定后再按“s”键。

然后目光就回到侧边栏啦,明白刚才两步干了什么吗,就是手动分别创建“下一页”链接和附加内容的XPath表达式,如果选错了就重新点击按钮选择一下。
这里分3栏,第一个就是所用的表达式,第二个是候选表达式,第三个就是预览效果啦,同时右边网页也是出现橙色框也是预览效果。
这么多表达式该选那个呢?上边那个选//b[contains(text(),'下一页')]下边那个选//div[@id='res']为什么选这2个,等下再说明。
确认选择无误之后就按第5个按钮,接着就出现设置对话框,在描述一栏改成“Google网页”,然后点击确定,就大功告成啦。

回到网页,启动自动翻页,接着右下角就出现选项了,选好后就Google网页就自动翻页了。是不是好简单呢?比以前那个方法直观简便多了。

下面换到Google图片继续练练手,随便搜个关键词,按上述步骤添加规则,2个XPath分别是
//b[contains(text(),'下一页')]
//div[@id='ImgContent']
再到Ubuntu中文论坛的一个有2页以上的帖子练手,2个XPath分别是
//a[contains(text(),'下一页')]
//body/table[@class='forumline']
表达式的选择
候选一栏中有好几个表达式为什么要选这个?下边有几个经验之得

有一个“权威性”的属性,我不知道是什么东西,不用鸟它。
“下一页”链接一般都是这个结构//b[contains(text(),'下一页')]
也就是选中带有”下一页“,”Next“,或“>>”之类的链接,如果选择了其它就表示错了。
还有一个“匹配数”,一般是1个,如果有2个或以上,看看是不是网页有2个或以上“下一页”的链接,预览那个橙色框也应该同时选中这2个。如果内容是不同的,那么就选错了。而附加内容一般是这个//aaa[@bbb='ccc']
匹配数可以不同,预览一下是不是你所需要的内容,不过也是只有1个最好。
有以上2中结构的优先选择,不行再选长一点的。
表达式越短越好,不妨先选最短的预览一下。
还记得上边第8步所说的红色框左下角的的英文么?如果你发现按“w”和“n”放大或缩小红色框时,发现框大小不变,但坐下角的英文却边了,那么选长一点的英文更好,也就是带有“XXX,YYY”,通常是“div,XXX”或“id,YYY”,的比单单一个“td”、“tr”、“tbody”更好,因为构成的表达式就是符合上边那种结构。
如果要学习XPath可以参考内置规则,和到文章开头的地址学,很简单的。

看起来有点罗嗦,其实很简单的,如果网站不太复杂,一般用“自动翻页工作室”多时几次就能应付了,如果网页结构实在混乱,Firefox同样也有其它好用的扩展来辅助创建XPath哦,请看《AutoPager简明攻略四-辅助工具》,还是没看懂的就到《AutoPager简明攻略五-规则分享》吧。

3 responses so far

3 04 2008

AutoPager简明攻略二-基本使用

Published by muzuiget under Firefox

AutoPager简明攻略系列文章
使用AutoPager前的准备

当然是安装一个Firefox浏览器,如果你在用IE、Opera、Safari浏览这个网页、请点击窗口右上角的“X”。
然后就安装AutoPager扩展。
避免冲突,把相同类型的扩展禁用,比如repagination、Pagerization、jautopagerize、autopagerize。

AutoPager的设置:
安装好AutoPager后,在状态栏就多了一个图标。当浏览打开Google或者百度时,然后右下角就出现了一个绿色的对话框

不知道选那个的话,选“E”,即自动翻一页。选好后你就可以看到神奇的翻页效果了,AutoPager内置了规则,包括上篇文章提到的Chinalist规则,使用就这么简单。
右键点击,选择“设置”,这时如果提示输入姓名,那就随便填一个,当你导出规则给别人分享时,就会带上这个名字以表明是你写的。界面如图

规则优先是自上而下的(我这里是猜测的,我找不到作者的说明),如果不喜欢默认的翻页分隔效果(对比一下,不同的),可以使用Pagerization的,在设置对话框里,在左上角输入google,过滤出规则,把Pagerization的规则克隆到自定义规则里面去,

速度的设置
我发觉装了AutoPager了,网页打开变的有点慢了,现在设置里把“智能翻页“取消”,同时也取消自动更新。

删除多余规则
另一个原因是默认的规则太多了,所以要清理出一下多余的规则,其中Pagerization和autopagerize都有很多jp域名,基本上用不了。但是默认的规则是删除不了的。所以要到Firefox的配置文件夹里,找到autopager文件夹,把除“autopager.xml”和“site-confim.xml”以外的xml文件都删除。在0.2版本后已经不需要删除规则了,只需要在规则选项里把“启用”的勾去消则可,或者你可以保留一下“chinalist.xml”。
恢复规则
OK,这样又有问题了,删除规则后就不能自动翻页了。如果已经删除了上述的文件,可以在菜单用“在线更新”下载回来。
排序规则

可以用克隆的方法,展开默认的规则,把要保留的规则都克隆到autopager.xml里去,Google啊百度啊这些都是必须的吧,看看默认的规则有没有你想要的。
可以利用查找来过滤,一个网站可能在每过xml都有规则(优先自上而下),如果是Pagerization的死忠,不妨克隆Pagerization.xml里的规则。
克隆好后,关闭Firefox,再次把多余的xml文件删除,这样后速度也回来了。

如果自带规则没有的网址,就要自己添加添加自定义规则了,方便地创建规则才是AutoPager的强悍之处,其实很简单,也不需要网页知识,当然,有点会更好理解。下一篇文章《AutoPager简明攻略三-创建规则》继续,懒得自己建规则的话就看《AutoPager简明攻略五-规则分享》。

7 responses so far