<p>
<p>
Python을 사용한 동적 콘텐츠 스크랩
<p>정적 HTML에서 일반 텍스트를 얻는 것은 간단하지만 동적 콘텐츠는 이야기가 다릅니다. JavaScript는 urllib2와 같은 Python의 HTTP 요청 라이브러리에 즉시 액세스할 수 없는 콘텐츠를 포함합니다.
<p>
동적 콘텐츠 액세스
<p>동적 콘텐츠에 액세스하기 위해 Python은 웹을 시뮬레이션하는 외부 도구를 활용할 수 있습니다. 브라우저. 이러한 도구는 JavaScript를 실행하고 렌더링된 페이지 콘텐츠를 반환합니다.
<p>
1. PhantomJS가 포함된 Selenium:
- PhantomJS(헤드리스 브라우저)를 설치하고 경로에 있는지 확인하세요.
- Selenium의 Python 라이브러리를 사용하여 PhantomJS를 웹 드라이버로 인스턴스화하세요.
- 대상 페이지로 이동하여 다음 요소를 찾습니다. 관심.
<p>
2. dryscape(Python 2만 해당):
- pip를 사용하여 dryscrape를 설치합니다.
- dryscrape 세션을 열고 대상 페이지를 방문합니다.
- 렌더링된 페이지 검색 콘텐츠를 string.
<p>
예
<p>동적 JavaScript가 포함된 샘플 HTML 페이지를 고려해 보세요.
<p>
<p>
JS가 없는 경우 지원:
import requests
from bs4 import BeautifulSoup
response = requests.get(my_url)
soup = BeautifulSoup(response.text)
print(soup.find(id="intro-text"))
<p>
출력:
<p>
<p>
JS 지원 포함 (셀레늄):
from selenium import webdriver
driver = webdriver.PhantomJS()
driver.get(my_url)
print(driver.find_element_by_id("intro-text").text)
<p>
출력:
Yay! Supports javascript
위 내용은 Python은 어떻게 동적 웹사이트 콘텐츠를 긁을 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!