<?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/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>wOOL&#039;s Blog &#187; Google Code</title>
	<atom:link href="http://iwool.wordpress.com/tag/google-code/feed/" rel="self" type="application/rss+xml" />
	<link>http://iwool.wordpress.com</link>
	<description>Lethal Sweety . Sunny Yawn . Deicidal Jujube . ...</description>
	<lastBuildDate>Sun, 03 Jan 2010 02:34:30 +0000</lastBuildDate>
	<generator>http://wordpress.com/</generator>
	<language>zh-cn</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<cloud domain='iwool.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://www.gravatar.com/blavatar/460f9faccd922f898984395e1cc9b1f9?s=96&#038;d=http://s.wordpress.com/i/buttonw-com.png</url>
		<title>wOOL&#039;s Blog &#187; Google Code</title>
		<link>http://iwool.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://iwool.wordpress.com/osd.xml" title="wOOL&#039;s Blog" />
		<item>
		<title>啊哈，逃OB之后。。。</title>
		<link>http://iwool.wordpress.com/2008/12/10/%e5%95%8a%e5%93%88%ef%bc%8c%e9%80%83ob%e4%b9%8b%e5%90%8e%e3%80%82%e3%80%82%e3%80%82/</link>
		<comments>http://iwool.wordpress.com/2008/12/10/%e5%95%8a%e5%93%88%ef%bc%8c%e9%80%83ob%e4%b9%8b%e5%90%8e%e3%80%82%e3%80%82%e3%80%82/#comments</comments>
		<pubDate>Wed, 10 Dec 2008 13:46:26 +0000</pubDate>
		<dc:creator>wOOL</dc:creator>
				<category><![CDATA[Calvados]]></category>
		<category><![CDATA[Google Code]]></category>
		<category><![CDATA[lrc]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Python3]]></category>
		<category><![CDATA[srt]]></category>

		<guid isPermaLink="false">http://iwool.wordpress.com/?p=160</guid>
		<description><![CDATA[Er&#8230;
上次在OB课上走神，推导出来那个求曲线长度的弧微分公式
这次OB直接逃掉了
（后来悲剧的发现老师亲自检查考勤，然后悲剧掉了）
换来的成果是一个把.lrc的歌词文件转换为.srt的字幕的Python脚本
性感的运用了可爱的2.6之后的新特性，可以在datetime.strptime()中使用%f
然后顺便安装了一个Python3以及在Google Code上开了一个新的Project
http://code.google.com/p/pylrc2srt/
之所以把那么一个简单的脚本放上去，是因为一开始我打算直接找一个现成的
后来发现*nix下没有，而一个C++的代码还编译不了
最最忧郁的是居然Google Code有一个项目了，但是除了svn中的一些C#代码，一个可以用的Download都没
于是。。。
其实这个行为本身并不怎么靠谱
因为于.srt不同，.lrc文件并没有保存一句话结尾时间这个数据
所以只能设定一个间隔，读取开始时间和下一句的开始时间，并把下一句的开始时间减去这个间隔作为结尾时间
./lrc2srt.py filename interval

#!/usr/bin/env python3
import sys,re
from datetime import datetime
p = re.compile("[0-9]+")
filename = sys.argv[1]
interval = str(sys.argv[2])
lrc = open(filename)
listtime =  []
listlyrics = []
for line in lrc.readlines():
    if p.match(line.split(":")[0].replace("[","")):
        listtime.append("00:" + line.split("]")[0].replace("[","")+"0")
        listlyrics.append(line.split("]")[1])
#read file and delete empty&#38;useless lines
o=""
i=0
while i [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iwool.wordpress.com&blog=1680080&post=160&subd=iwool&ref=&feed=1" />]]></description>
			<content:encoded><![CDATA[<div class='snap_preview'><br /><p>Er&#8230;<br />
上次在OB课上走神，推导出来那个求曲线长度的弧微分公式<br />
这次OB直接逃掉了<br />
（后来悲剧的发现老师亲自检查考勤，然后悲剧掉了）<br />
换来的成果是一个把.lrc的歌词文件转换为.srt的字幕的Python脚本<br />
性感的运用了可爱的2.6之后的新特性，可以在datetime.strptime()中使用%f<br />
然后顺便安装了一个Python3以及在Google Code上开了一个新的Project<br />
<a href="http://code.google.com/p/pylrc2srt/">http://code.google.com/p/pylrc2srt/</a><br />
之所以把那么一个简单的脚本放上去，是因为一开始我打算直接找一个现成的<br />
后来发现*nix下没有，而一个C++的代码还编译不了<br />
最最忧郁的是居然Google Code有一个项目了，但是除了svn中的一些C#代码，一个可以用的Download都没<br />
于是。。。</p>
<p>其实这个行为本身并不怎么靠谱<br />
因为于.srt不同，.lrc文件并没有保存一句话结尾时间这个数据<br />
所以只能设定一个间隔，读取开始时间和下一句的开始时间，并把下一句的开始时间减去这个间隔作为结尾时间</p>
<p><a href="http://pylrc2srt.googlecode.com/files/lrc2srt.py">./lrc2srt.py</a> filename interval</p>
<p><code><br />
#!/usr/bin/env python3</p>
<p>import sys,re<br />
from datetime import datetime</p>
<p>p = re.compile("[0-9]+")<br />
filename = sys.argv[1]<br />
interval = str(sys.argv[2])</p>
<p>lrc = open(filename)</p>
<p>listtime =  []<br />
listlyrics = []</p>
<p>for line in lrc.readlines():<br />
    if p.match(line.split(":")[0].replace("[","")):<br />
        listtime.append("00:" + line.split("]")[0].replace("[","")+"0")<br />
        listlyrics.append(line.split("]")[1])</p>
<p>#read file and delete empty&amp;useless lines</p>
<p>o=""<br />
i=0</p>
<p>while i  " +\<br />
    "0" + (str(datetime.strptime(listtime[i+1],"%H:%M:%S.%f")-datetime.strptime(interval,"%f"))).replace("000","").replace(".",",")+\<br />
    "\n"+listlyrics[i]+\<br />
    "\n"<br />
    i=i+1</p>
<p>o = o + str(i+1) + "\n" + listtime[-1].replace(".",",")+ " --&gt; " + "\n" + listlyrics[-1] + "\n"<br />
srt = open(filename.replace("lrc","srt"),"w")<br />
srt.write(o)<br />
</code></p>
Posted in Calvados Tagged: Google Code, lrc, Python, Python3, srt <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/iwool.wordpress.com/160/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/iwool.wordpress.com/160/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/iwool.wordpress.com/160/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/iwool.wordpress.com/160/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/iwool.wordpress.com/160/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/iwool.wordpress.com/160/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/iwool.wordpress.com/160/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/iwool.wordpress.com/160/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/iwool.wordpress.com/160/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/iwool.wordpress.com/160/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=iwool.wordpress.com&blog=1680080&post=160&subd=iwool&ref=&feed=1" /></div>]]></content:encoded>
			<wfw:commentRss>http://iwool.wordpress.com/2008/12/10/%e5%95%8a%e5%93%88%ef%bc%8c%e9%80%83ob%e4%b9%8b%e5%90%8e%e3%80%82%e3%80%82%e3%80%82/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://0.gravatar.com/avatar/699d25d5e4c213d82a1296129b50075d?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">wOOL</media:title>
		</media:content>
	</item>
	</channel>
</rss>