iT邦幫忙

DAY 9
1

一天寫的比一天晚!這樣撐得過三十天嗎?﹝外面雨大的很恐怖!﹞

今晚花了將近兩小時在和正規式博鬥,首先是先找出能在正規式的pattern使用字串參數,

一開始以為只要這樣

reStr = "r'(<tr).*(</tr>)'"
targetTag = re.findall( reStr, data )

結果完全不理我!然後靠經驗改成這樣﹝不是很懂 format() 的功用,有時間再Google一

下﹞

reStr = "(<tr).*(</tr>)"
targetTag = re.findall( reStr.format(), data )

終於有東西了,但是結果卻只有 <tr 和 </tr> !裡面的東西咧?結果又嘗試了search、

compile、split、group...結果不是只找了一次,就是打死不給中間的內容,最後突然想到,該不會正規式有問題,結果改成這樣

reStr = "(<td)(.*)(>)(.*)(</td>)"
targetTag = re.findall( reStr.format(), data )

結果終於出現我想要的結果了!整理一下程式碼,明天可以繼續奮鬥了...

#! /usr/bin/env python
#-*- coding: utf-8 -*-
import urllib.request
import re

if __name__ == "__main__":

    f = open('index.php', 'r' )
    data = f.read()
    f.close
    
    targetTag   = "td"
    reStr = "(<"+ targetTag +")(.*)(>)(.*)(</"+ targetTag +">)"
    
    reObj = re.compile( reStr.format() )
    # reObj = re.compile( r'(<td)(.*)(>)(.*)(</td>)' )
    
    targetTag = reObj.findall( data )
    
    for x in targetTag:
        print( x )

正規式不熟,python不熟,結果就是...慢慢磨囉!

以上,這種學習法真是緩慢又痛苦,真該好好的花時間把書從頭到尾K一遍,就像當時學C

一樣...


上一篇
[Day 08] HTML 標籤分析-01
下一篇
[Day 10] HTML 標籤分析-03
系列文
從魯蛇到蟒蛇--網頁(站)靜(動)態分析工具開發30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言