<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ye's world &#187; 技术活</title>
	<atom:link href="http://www.yegq.org/archives/category/tech/feed" rel="self" type="application/rss+xml" />
	<link>http://www.yegq.org</link>
	<description>谁用谁闪亮</description>
	<lastBuildDate>Thu, 08 Apr 2010 04:05:28 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>升级顺利</title>
		<link>http://www.yegq.org/archives/196</link>
		<comments>http://www.yegq.org/archives/196#comments</comments>
		<pubDate>Wed, 04 Nov 2009 10:38:39 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[技术活]]></category>

		<guid isPermaLink="false">http://www.yegq.org/?p=196</guid>
		<description><![CDATA[很快：

备份整个数据库
下载最新版，2.8.5
上传一个/index.html，发个升级期间的公告。（多此一举了，我blog没人看的 &#62;_&#60;）
解压上传，覆盖掉原来的文件和目录。要注意看看升级文件里面的/wp-content/没有包含邪恶的东西。
访问/wp-admin/upgrade.php，按提示升级一下数据库。
好了，真正动手干活的时间不到5分钟。前端看起来一切没变，模板兼容性好。
后台的确好用的多，在产品设计上下了苦工的。

]]></description>
			<content:encoded><![CDATA[<p>很快：</p>
<ul>
<li>备份整个数据库</li>
<li>下载最新版，2.8.5</li>
<li>上传一个/index.html，发个升级期间的公告。（多此一举了，我blog没人看的 &gt;_&lt;）</li>
<li>解压上传，覆盖掉原来的文件和目录。要注意看看升级文件里面的/wp-content/没有包含邪恶的东西。</li>
<li>访问<code>/wp-admin/upgrade.php，按提示升级一下数据库。</code></li>
<li>好了，真正动手干活的时间不到5分钟。前端看起来一切没变，模板兼容性好。</li>
<li>后台的确好用的多，在产品设计上下了苦工的。</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.yegq.org/archives/196/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>我是一只小爬虫</title>
		<link>http://www.yegq.org/archives/186</link>
		<comments>http://www.yegq.org/archives/186#comments</comments>
		<pubDate>Sun, 01 Nov 2009 19:05:51 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[技术活]]></category>
		<category><![CDATA[BeautifulSoup]]></category>
		<category><![CDATA[crawler]]></category>
		<category><![CDATA[gae]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://www.yegq.org/?p=186</guid>
		<description><![CDATA[不是我，是它。刚刚放出了一只小爬虫，完成了任务。它爬了4,411个页面，有5个因为http连接超时而不成功，都是外国的站点，这个比较正常。算下来成功率很高的了。
看了一下log，不同站点响应速度有差别，总体来说，每个页面抓取时间平均约为2秒钟；接着分析页面平均花了0.7秒，比较欣喜，在这些小规模应用上，BeautifulSoup 的效能完全令人满意的；然后其余的数据库操作大概用了半秒钟。
总体来说，一个页面抓取和分析和数据存储任务大概就要3.2秒。
再进一步总结：

python是很适合做这类光荣的小爬虫任务的。
BeautifulSoup 真的很方便，我一口气写了30多个站点的抓取规则，一开始一边写一边祈祷这日子赶快结束，写到后来发现还是觉得不算无趣的。那种你看一眼html代码就知道应该如何写并且一下手就准确无误的感觉是很爽的。要知道有些网站的html写的很变态，上个世纪的html风格都有。
GAE好多限制，不得不将代码重构了一遍，迁移到纯粹的python环境下。关键是好多个数据表，他们之间关系复杂，用关系数据库（比如Mysql）最好。GAE上好不容易处理，都快把我弄疯掉了，比如那个在SQL里面很容易处理的PK/AI啊，GAE得自己写个function去保证唯一并自增，真是很傻的
小型的web应用，还是PHP最方便。信手拈来，想怎么搞就这么搞，写PHP代码都不用构思的，心里想着目标和路径，一气呵成，连debug都省了。

爬虫，就是crawler。比较恶心蜘蛛，还是称之为爬虫好，当然，更温情的是叫机器人。
PS，百度最恶心了，它家的爬虫叫baiduspider，
google的最好，所以他叫googlebot
yahoo的最恐怖，叫yahoo slurp（吸血鬼啊！？）
bing的想向google大神发起冲击，所以也叫bot，bing MSNBot （呃，不过貌似在破烂的msn search年代就用bot这个称谓）
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;华丽之分割线&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;
不知不觉已经凌晨了，外面有人在吵架，上海人平常说话就像吵架，吵架的时候就像拆楼。不过我一定睡的着，你就继续吵吧～
并且呢，上海人吵闹似乎都乐于摆出来给大家观瞻的，例如那个叫新老娘舅的节目
]]></description>
			<content:encoded><![CDATA[<p>不是我，是它。刚刚放出了一只小爬虫，完成了任务。它爬了4,411个页面，有5个因为http连接超时而不成功，都是外国的站点，这个比较正常。算下来成功率很高的了。</p>
<p>看了一下log，不同站点响应速度有差别，总体来说，每个页面抓取时间平均约为2秒钟；接着分析页面平均花了0.7秒，比较欣喜，在这些小规模应用上，<a title="BeautifulSoup" href="http://www.crummy.com/software/BeautifulSoup/" target="_blank">BeautifulSoup</a> 的效能完全令人满意的；然后其余的数据库操作大概用了半秒钟。</p>
<p>总体来说，一个页面抓取和分析和数据存储任务大概就要3.2秒。</p>
<p>再进一步总结：</p>
<ul>
<li><a title="python" href="http://www.python.org/" target="_blank">python</a>是很适合做这类光荣的小爬虫任务的。</li>
<li><a title="BeautifulSoup" href="http://www.crummy.com/software/BeautifulSoup/" target="_blank">BeautifulSoup</a> 真的很方便，我一口气写了30多个站点的抓取规则，一开始一边写一边祈祷这日子赶快结束，写到后来发现还是觉得不算无趣的。那种你看一眼html代码就知道应该如何写并且一下手就准确无误的感觉是很爽的。要知道有些网站的html写的很变态，上个世纪的html风格都有。</li>
<li><a title="google app engine" href="http://code.google.com/appengine/" target="_blank">GAE</a>好多限制，不得不将代码重构了一遍，迁移到纯粹的<a title="python" href="http://www.python.org/" target="_blank">python</a>环境下。关键是好多个数据表，他们之间关系复杂，用关系数据库（比如<a title="mysql" href="http://www.mysql.com" target="_blank">Mysql</a>）最好。<a title="google app engine" href="http://code.google.com/appengine/" target="_blank">GAE</a>上好不容易处理，都快把我弄疯掉了，比如那个在SQL里面很容易处理的PK/AI啊，GAE得自己写个function去保证唯一并自增，真是很傻的</li>
<li>小型的web应用，还是<a title="php" href="http://www.php.net" target="_blank">PHP</a>最方便。信手拈来，想怎么搞就这么搞，写<a title="php" href="http://www.php.net" target="_blank">PHP</a>代码都不用构思的，心里想着目标和路径，一气呵成，连debug都省了。</li>
</ul>
<p>爬虫，就是crawler。比较恶心蜘蛛，还是称之为爬虫好，当然，更温情的是叫机器人。</p>
<p>PS，百度最恶心了，它家的爬虫叫baiduspider，</p>
<p>google的最好，所以他叫googlebot</p>
<p>yahoo的最恐怖，叫yahoo slurp（吸血鬼啊！？）</p>
<p>bing的想向google大神发起冲击，所以也叫bot，bing MSNBot （呃，不过貌似在破烂的msn search年代就用bot这个称谓）</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;华丽之分割线&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>不知不觉已经凌晨了，外面有人在吵架，上海人平常说话就像吵架，吵架的时候就像拆楼。不过我一定睡的着，你就继续吵吧～</p>
<p>并且呢，上海人吵闹似乎都乐于摆出来给大家观瞻的，例如那个叫新老娘舅的节目</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yegq.org/archives/186/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>解决phpMyAdmin的完整显示视图</title>
		<link>http://www.yegq.org/archives/177</link>
		<comments>http://www.yegq.org/archives/177#comments</comments>
		<pubDate>Sun, 01 Nov 2009 18:10:54 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[技术活]]></category>
		<category><![CDATA[phpmyadmin]]></category>
		<category><![CDATA[pma]]></category>

		<guid isPermaLink="false">http://www.yegq.org/?p=177</guid>
		<description><![CDATA[更新一篇吧，不谈风月，也不谈国事。
不知何时开始，PMA默认不显示以binary存放的数据。而我定义char/varchar/text等类型的时候，又喜欢用utf8_bin。结果只有int和date/time类型的数据会显示，其他都提示作 “[BINARY/BLOB - xx字节]”，那个郁闷啊，老手动的选options，翻翻sf上pma的issue，有个patch，但打上去后发现不可用，半年有多了，可能已经落后。
自己动手。F12呼出神器firebug，看到POST到sql.php去的相关数据有display_text，display_binary ， display_blob三项，然后找到关键代码文件 /librarier/display_tbl.lib.php，发现可以通过session获取优先设置，完全可以无视这三项传进来的参数。
好吧，我就不管你三七二十一了，直接加上三行：
$_SESSION['userconf']['display_text'] = &#8216;F&#8217;;
$_SESSION['userconf']['display_binary'] = &#8216;ON&#8217;;
$_SESSION['userconf']['display_blob'] = &#8216;ON&#8217;;
全好了。
]]></description>
			<content:encoded><![CDATA[<p>更新一篇吧，不谈风月，也不谈国事。</p>
<p>不知何时开始，PMA默认不显示以binary存放的数据。而我定义char/varchar/text等类型的时候，又喜欢用utf8_bin。结果只有int和date/time类型的数据会显示，其他都提示作 “[BINARY/BLOB - xx字节]”，那个郁闷啊，老手动的选options，翻翻sf上pma的issue，有个patch，但打上去后发现不可用，半年有多了，可能已经落后。</p>
<p>自己动手。F12呼出神器firebug，看到POST到sql.php去的相关数据有display_text，display_binary ， display_blob三项，然后找到关键代码文件 /librarier/display_tbl.lib.php，发现可以通过session获取优先设置，完全可以无视这三项传进来的参数。</p>
<p>好吧，我就不管你三七二十一了，直接加上三行：</p>
<blockquote><p>$_SESSION['userconf']['display_text'] = &#8216;F&#8217;;<br />
$_SESSION['userconf']['display_binary'] = &#8216;ON&#8217;;<br />
$_SESSION['userconf']['display_blob'] = &#8216;ON&#8217;;</p></blockquote>
<p>全好了。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yegq.org/archives/177/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Hello 2005</title>
		<link>http://www.yegq.org/archives/1</link>
		<comments>http://www.yegq.org/archives/1#comments</comments>
		<pubDate>Sat, 01 Jan 2005 17:13:30 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[技术活]]></category>

		<guid isPermaLink="false">http://yegq.yeax.com/?p=1</guid>
		<description><![CDATA[新年的第一天刚过去，安装wordpress成功！
]]></description>
			<content:encoded><![CDATA[<p>新年的第一天刚过去，安装wordpress成功！</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yegq.org/archives/1/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
