[PYTHON] BeautifulSoup - HTML 조각에있는 모든 링크를 수정합니까?
PYTHONBeautifulSoup - HTML 조각에있는 모든 링크를 수정합니까?
HTML 문서의 모든 단일 링크를 수정할 수 있어야합니다. 나는 SoupStrainer를 사용해야한다는 것을 알고 있지만 그것을 구현하는 방법에 대해 100 % 긍정적이지는 않습니다. 누군가 나를 좋은 리소스로 안내하거나 코드 예제를 제공 할 수 있다면 대단히 감사하겠습니다.
감사.
해결법
-
==============================
1.이런 식으로 뭔가를 할 수 있을까요? (필자는 불행히도 파이썬 인터프리터를 가지고 있지 않습니다.)
이런 식으로 뭔가를 할 수 있을까요? (필자는 불행히도 파이썬 인터프리터를 가지고 있지 않습니다.)
from BeautifulSoup import BeautifulSoup soup = BeautifulSoup('<p>Blah blah blah <a href="http://google.com">Google</a></p>') for a in soup.findAll('a'): a['href'] = a['href'].replace("google", "mysite") result = str(soup)
-
==============================
2.
from BeautifulSoup import BeautifulSoup soup = BeautifulSoup('<p>Blah blah blah <a href="http://google.com">Google</a></p>') for a in soup.findAll('a'): a['href'] = a['href'].replace("google", "mysite") print str(soup)
이것은 루시드 (Lusid)의 해결책이지만, 파이썬 인터프리터가 없기 때문에 테스트를 할 수 없었고 몇 가지 오류가있었습니다. 방금 작업 상태를 게시하고 싶었습니다. 고맙습니다.
-
==============================
3.나는 이것을 시도했고 효과가 있었다. 각각의 'href'를 매칭하기 위해 regexp를 사용하는 것을 피하는 것이 더 쉽다.
나는 이것을 시도했고 효과가 있었다. 각각의 'href'를 매칭하기 위해 regexp를 사용하는 것을 피하는 것이 더 쉽다.
from bs4 import BeautifulSoup as bs soup = bs(htmltext) for a in soup.findAll('a'): a['href'] = "mysite"
bs4 워드 프로세서에서 확인하십시오.
from https://stackoverflow.com/questions/459981/beautifulsoup-modifying-all-links-in-a-piece-of-html by cc-by-sa and MIT license
'PYTHON' 카테고리의 다른 글
[PYTHON] 클래스의 모든 메서드를 래핑하는 방법? (0) | 2018.11.08 |
---|---|
[PYTHON] python urllib2를 사용하여 로그인 용 json 데이터를 보내는 방법 (0) | 2018.11.08 |
[PYTHON] 이진 분류 용 TensorFlow (0) | 2018.11.08 |
[PYTHON] Django ModelForm과 함께 request.user 사용하기 (0) | 2018.11.08 |
[PYTHON] 파이썬과 Tcl을 인터페이스하는 창의적인 방법을 알고 계십니까? (0) | 2018.11.08 |