2013-04-12 3 views
0

프로젝트에 대한 저조한 ​​디자인 웹 페이지에서 텍스트를 추출하려고하는데, 오랜 연구와 비단 배우기 후에 필자는 그 일을 할 수있게되었지만 웹 페이지가 제대로 디자인되지 않았기 때문에 올바른 정규 표현식을 찾을 수 없습니다.ReGex with Python으로 올바른 정규 표현식을 찾을 수 없습니다.

그래서 여기에 우리는 내가 성취 한 것을 가지고 있습니다. http://coj.uci.cu/24h/status.xhtml?username=Diego1149&abb=1006이 웹 페이지의 소스 코드에서 받아 들여지는 문제의 첫 번째 인스턴스 전체 라인을 가져오고 싶습니다. 그래서 나는이

exprespatFinderTitle = re.compile('<table id="submission" class="volume">.*(<tr class=.*>.*<label class="AC">.*Accepted.*</label>.*</tr>).*</table>') 

생각하지만 수행이하는 일은 테이블의 마지막 <tr>까지 클리핑입니다. 누군가 나를 알아낼 수있게 도와 줄 수 있습니까?

임 파이썬 2.7 오순절 BeautifulSoup로하고 URLLIB

를 사용하여
+0

은 * 왜 * 당신은 아직도 정규 표현식을 사용하고 있습니까? –

+0

BeautifulSoup을 사용해 보았습니다.하지만 정규식에 더 가깝습니다. 내 소스 코드를 게시하면 도움이 될까요? – Konang

답변

0

스틱 혼자 BeautitfulSoup하는 단계; 정규 표현식은 있는 HTML 구문 분석을위한 도구가 아닙니다 : 당신은 BeautifulSoup로를 사용하는 경우

table = soup.find('table', id='submission') 
accepted = table.tbody.find('label', class_='AC') 
if accepted: 
    row = accepted.parent.parent # row with accepted column 
+0

글쎄요, 정말 고마워요, 지금 제가 8 시간 연속으로 이것을 알아 내려고 노력한 것을 정말 도움이되었습니다. 다시 한번 감사드립니다 :) – Konang

관련 문제