2015-01-15 79 views
-3

IM多時間寫這個劇本:在同一個列表蟒蛇正則表達式提取森達列表

def extractURL(data): 
    links = re.findall(r'href=[\'"]?([^\'" >]+)', data) 
    scrlinks = re.findall(r'scr=[\'"]?([^\'" >]+)', data) 
    print '+' + str(len(links)) 
    logfile = open('links.dat', 'a') 
    for link in links: 
     logfile.write('%s\n' % (link)) 
    for link in scrlinks: 
     logfile.write('%s\n' % (link)) 
    logfile.close() 

可以提取多次白衣正則表達式?用於一次用於funnction。

+0

你能解釋一個例子嗎? –

+0

不能得到你想要的?功能看起來不錯..你能詳細解釋一下嗎? –

+0

表示您只想要一個變量來存儲重新結果 –

回答

0

據kingcope「是的,我想在重新的一個變量的結果商店 - kingcope」

使用列表extend方法。

>>> l1 = [1,2,3] 
>>> l2 = [4,5,6] 
>>> l1.extend(l2) 
>>> l1 
[1, 2, 3, 4, 5, 6] 

或者添加兩個列表

>>> l1 = [1,2,3] 
>>> l2 = [4,5,6] 
>>> l3 = l1+l2 
>>> l3 
[1, 2, 3, 4, 5, 6] 

使用解析器提取的hrefsrc

content值是HTML文件中的數據。

>>> import lxml.html as PARSER 
>>> root = PARSER.fromstring(content) 
>>> root.xpath("//@src") 
['#333'] 
>>> root.xpath("//@href") 
['1.com'] 
>>> 
+0

@kingcope:這對你有用? –