大事年年有,今年別多,﹝以下發言沒有任何政治立場﹞,香港現在發生的大事,期望不要成為下一個天安門。
在混了四天...喔!不是,是花了四天了解urllib後,今天終於開始步入分析程式碼,網頁都抓了,那就開始分析吧!
以下為一個範例網頁的標籤形式﹝已HTML5為例﹞
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="keywords" content="">
<meta name="Description" content="" />
<title>Test Html</title>
<link href="css/style.css" rel="" type="text/css" />
<script type="text/javascript" src="js/jquery-1.8.2.js"/>
<h1>H1</h1>
<form name="test" action="form.php" method="post">
<table class="table_style">
<tr>
<th>th1</th>
<th>th2</th>
</tr>
<tr>
<td>td1</td>
<td>yd2</td>
</tr>
</table>
</form>
<h2>H2</h2>
<div>
<a href="go,php">go</a>
</div>
<div>
<img src="imges/logo.jpg" alt="test"></img>
</div>
<h3>H3</h3>
<ul>
<li>
<input type="text" />
</li>
</ul>
標籤分析的概念,大概就是尋找開始標籤和結束標籤吧!那就是使用正規表示式囉!花點時間找找資料,re.findall似乎符合要求,依序傳回批配字串的子字串。這樣似乎能輕鬆傳回標籤內的資料!
結果一轉眼就要十一點了,結果竟然敗給了正規表示式,以下是今天的程式碼
#! /usr/bin/env python
#-*- coding: utf-8 -*-
import urllib.request
import re
if __name__ == "__main__":
targetUrl = "https://www.my-website.idv.tw/"
urlobj = urllib.request.urlopen( targetUrl )
data = urlobj.read()
urlobj.close()
restr = "r'(<h1>).*(</h1>)'"
targetTag = re.findall( r'(<h1>).*(</h1>)', str( data ) )
# targetTag = re.search( r'(<h1>).*(</h1>)', str( data ) )
print( targetTag )
結果有批配到目標,原本想使用字串來提高使用方便性,但是卻碰壁了!看看時鐘竟然已經十一點,只好明天繼續努力了QQ
以上,在學校很混的我,進度緩慢的程式...﹝一個簡單功能做三十天就太愚蠢了...﹞,晚安!