2014-11-10 2 views
-1

Google 검색 결과를 구문 분석하는 스크립트를 업데이트하고 있습니다. Google은 결과가 반환되는 방식을 변경하고 정규 표현식을 업데이트해야합니다. 현재이 문제는 앰퍼샌드를 본 후 정규식이 중지되도록합니다.파이썬 정규식에서 앰퍼샌드 중지

현재 정규식 re_urls = re.compile('<a href="/url\?q=(.*?)"')이 예를 들어 반환

: http://www.example.com/test&amp;sa=U&amp;ei=3gdhVOfSJOr1iQKnwoBg&amp;ved=0CBQQFjAA&amp;usg=AFQjCNHPaPBdpjIJFynGKhW1As1fg9r8Aw

나는 당신이 앰퍼샌드에 관심이없는 경우 그냥 http://www.example.com/test

+0

정규 표현식을 사용하지 않는 것이 좋습니다. [this] (http://stackoverflow.com/a/1732454/1224076) 체크 아웃하십시오. 대신 [BeautifulSoup] (http://www.crummy.com/software/BeautifulSoup/)를 사용해보십시오. – Phani

+0

정규식을 사용하여 –

+0

Google 검색 결과를 구문 분석하지 않으며 BeautifulSoup을 사용하고 싶지 않습니다. 가능하면 스크립트를 모듈화하려고합니다. – Siggy

답변

1

을 반환받을 수 있나요 어떻게, 당신은 단순히

을 사용할 수 있습니다
r'<a href="/url\?q=([^&"]*)' 

를 제외한 문자 클래스를 사용합니다.및 & 자이며 다른 모든 문자는 탐욕스럽게 일치합니다.

+0

고맙습니다. 완벽하게 작동합니다. – Siggy

관련 문제