2011-05-13 8 views
-1

웹 페이지를 구문 분석하고 결과를 MySQL에 스 크립트하는 스크립트를 작성 중입니다.Python을 사용하여 텍스트 블록 구문 분석

<TH ALIGN=center COLSPAN=6 BGCOLOR="#C0C0C0"><FONT SIZE="-1">Monthly Totals</FONT></TH> </TR> 
<TR><TH ALIGN=center BGCOLOR="#00805c"><FONT SIZE="-1">Hits</FONT></TH> 
<TH ALIGN=center BGCOLOR="#0040ff"><FONT SIZE="-1">Files</FONT></TH> 
<TH ALIGN=center BGCOLOR="#00e0ff"><FONT SIZE="-1">Pages</FONT></TH> 
<TH ALIGN=center BGCOLOR="#ffff00"><FONT SIZE="-1">Visits</FONT></TH> 
<TH ALIGN=center BGCOLOR="#ff8000"><FONT SIZE="-1">Sites</FONT></TH> 
<TH ALIGN=center BGCOLOR="#ff0000"><FONT SIZE="-1">KBytes</FONT></TH> 
<TH ALIGN=center BGCOLOR="#ffff00"><FONT SIZE="-1">Visits</FONT></TH> 
<TH ALIGN=center BGCOLOR="#00e0ff"><FONT SIZE="-1">Pages</FONT></TH> 
<TH ALIGN=center BGCOLOR="#0040ff"><FONT SIZE="-1">Files</FONT></TH> 
<TH ALIGN=center BGCOLOR="#00805c"><FONT SIZE="-1">Hits</FONT></TH></TR> 
<TR><TH HEIGHT=4></TH></TR> 
<TR><TD NOWRAP><A HREF="usage_201105.html"><FONT SIZE="-1">May 2011</FONT></A></TD> 
<TD ALIGN=right><FONT SIZE="-1">2529721</FONT></TD> 
<TD ALIGN=right><FONT SIZE="-1">582503</FONT></TD> 
<TD ALIGN=right><FONT SIZE="-1">490365</FONT></TD> 
<TD ALIGN=right><FONT SIZE="-1">23301</FONT></TD> 
<TD ALIGN=right><FONT SIZE="-1">17720</FONT></TD> 
<TD ALIGN=right><FONT SIZE="-1">145942234</FONT></TD> 
<TD ALIGN=right><FONT SIZE="-1">279618</FONT></TD> 
<TD ALIGN=right><FONT SIZE="-1">5884390</FONT></TD> 
<TD ALIGN=right><FONT SIZE="-1">6990042</FONT></TD> 
<TD ALIGN=right><FONT SIZE="-1">30356654</FONT></TD></TR> 
<TR><TD NOWRAP><A HREF="usage_201104.html"><FONT SIZE="-1">Apr 2011</FONT></A></TD> 
<TD ALIGN=right><FONT SIZE="-1">2246629</FONT></TD> 
<TD ALIGN=right><FONT SIZE="-1">517645</FONT></TD> 
<TD ALIGN=right><FONT SIZE="-1">483787</FONT></TD> 

을 나는 등등 캐리지 리턴을 따라 다음과 적용 방법은 다음과 같습니다 :

stats = re.findall ("Apr(.*)",content) 
+0

정확히 무엇을 원하십니까? _ "등등"_은 이해하기에 조금 짧습니다. – eyquem

+3

"신사"는 아마도이 사이트를 사용하는 사람들의 절반을 무시합니다. –

답변

6

을 사용 BeautifulSoup, 다음

는 HTML 내용의 예를 들어 내가 구문 분석 할 필요가 반환된다 아니요 HTML을 구문 분석하는 정규 표현식 (참조 : this famous answer)

1

사용 lxml, 정규 표현식은 HTML을 구문 분석합니다. lxml은 내 경험에 비추어 볼 때 BeautifulSoup보다 훨씬 강력하고 강력합니다.

+0

아. 나는 lxml의 HTML 구문 분석을 사용하지 않았다 ... BeautifulSoup가 나쁜 마크 업을 용서하고 있는가? 보통 BeautifulSoup으로 시작하는 것이 좋습니다. 왜냐하면 a) 자체 포함 된 Python 파일이고 b) 심하게 부서진 HTML을 구문 분석하는 괜찮은 작업을 수행하기 때문입니다. –

+0

@lillmlx는 실제로 HTML 수프와 함께 * 더 좋을 수 있습니다. 자세한 내용은 http://lxml.de/elementsoup.html에서 볼 수 있습니다. 입력에 따라 달라집니다. 일반적으로 lxml은 성능이 뛰어납니다. – Henry

+0

니스, 나는 그것을 염두에 두어야 할 것이다. –

관련 문제