2012-01-11 21 views
0

雖然我喜歡這個程序,但我對Caliber的每週更新習慣感到非常厭倦。爲了抵消這個問題,我正在嘗試使用一個可以自動執行這個過程的python腳本。使用Python從網頁中選擇特定文本

我已經成功地打開了文檔,但是我很難弄清楚如何爲字符串捕獲它的特定部分。由於Calibre的下載鏈接取決於需要檢索的版本號。目前,管線218包含以下內容:

 <a href="/projects/calibre/files/latest/download?source=files" title="/0.8.34/calibre-portable-0.8.34.zip: released on 2012-01-06 07:22:08 UTC"> 

我需要從線檢索 「口徑-ebook.0.8.34」。關於如何做這項工作的任何建議?

import urllib2 
print("Calibre is Updating") 
url = urllib2.urlopen ("http://sourceforge.net/projects/calibre/files").read() 
print(url) 

回答

1

的修正案,代碼:

import urllib2 
import re 

print("Calibre is Updating") 
url = urllib2.urlopen ("http://sourceforge.net/projects/calibre/files").read() 

result = re.search('title="/[0-9.]*/([a-zA-Z\-]*-[0-9\.]*)', url).groups()[0][:-1] 
print(result) 

我在做什麼這裏使用re module來搜索您的要求相匹配的字符串,並將其保存到結果。

由於我的正則表達式保存了一個額外的點,我最終刪除了最後一個字符。有了一定的耐心,你可以真正把它釘在你需要的東西上。

相關問題