2015-11-20 86 views
0

我在文件中有幾個鏈接。我想遍歷每個鏈接的網頁(源代碼),從該頁面獲取第443行(包含特定的詳細信息,如下所示),並將其寫入另一個文件以及相應的鏈接。閱讀幾個文件,並使用python將每個文件的第n行寫入另一個文件中

輸入文件:

http://abc/app/application_144733409001

http://abc/app/application_144733409001

http://abc/app/application_144733409000

http://abc/app/application_144733409003

http://abc/app/application_144733409005

http://abc/app/application_144733409008

http://abc/app/application_144733409009

http://abc/app/application_144733409006

預期輸出文件:

http://abc/app/application_144733409001 31098 MB-秒,3 VCORE秒

http://abc/app/application_144733409001 31098 MB-秒,2 vcore-秒

http://abc/app/application_144733409000 31098 MB-秒,3 VCORE秒

http://abc/app/application_144733409003 31098 MB-秒,5 VCORE秒

http://abc/app/application_144733409005 31798 MB-秒,7 VCORE秒

http://abc/app/application_144733409008 31018 MB-秒,3 VCORE秒

http://abc/app/application_144733409009 31097 MB-秒,3 VCORE秒

http://abc/app/application_144733409006 31094 MB-秒,3 VCORE秒

代碼:

import sys 
import urllib 

Lines = [Line.strip() for Line in open ('input.txt','r').readlines()] 

with open('/home/try/intermediate.txt', 'w') as out_file: 
    for Line in Lines: 
     page = urllib.urlopen(line).read() 

     #print page 

我不知道如何着手。請幫助我。在此先感謝

+0

好,這就是問題所在......這是內部到我們的網絡。所以你將無法查看它。我只想從那個html頁面只有一行,猜想它不應該是一個問題,只需要一行就可以了 – blackfury

+0

只需在迭代它們時計算行(使用'enumerate()')和'pass'直到行443. – Dan

+0

你能告訴我一個簡單的代碼,證明?? – blackfury

回答

1

使用re檢查線匹配的字符串 https://regex101.com/r/nU3xW1/1

for line in Lines: 
    remoteLine = urllib.urlopen(line) 
    for l in remoteLine: 
     matchObj = re.match(r'(\d+) MB-seconds, (\d+) vcore-seconds', l) 
     if matchObj: 
      print "matchObj.group() : ", matchObj.group() 
+0

我不確定urllib.urlopen(行)是否可以逐行讀取網頁。我沒有得到任何輸出 – blackfury

+0

@blackfury現在修復它。你是對的readline不起作用,但迭代響應中的每一行,這也意味着're'也適用 – jeedo

相關問題