pyquery 파서가 태그 이름 dom node를 얻을 수 없는 문제에 대한 솔루션

不言
풀어 주다: 2018-10-09 15:50:55
앞으로
2442명이 탐색했습니다.

이 문서의 내용은 pyquery 파서가 태그 이름 dom 노드를 얻을 수 없는 문제에 대한 것입니다. 이는 특정 참조 값을 가지고 있으므로 도움이 될 수 있습니다.

저는 진지한 프론트엔드 개발자로서 Python을 배우는 과정에서 자연스럽게 pyquery 파서를 선택하게 되었습니다. 결국 프론트엔드 jquery와 마찬가지로 학습 시간이 많이 절약됩니다.
그러나 사용 중에 pyquery가 jquery만큼 편리하게 dom 노드를 필터링할 수 없다는 문제가 발견되었습니다.
몇몇 조사 끝에 우리는 클래스 이름의 경우 pyquery가 여전히 쉽게 노드를 얻을 수 있지만 a, p, img... 등과 같은 기본 태그를 사용할 때 노드를 얻을 수 없다는 사실을 발견했습니다.
한때 매우 좌절했습니다...

범인

<div xmlns="http://www.w3.org/1999/xhtml" class="image-item-inner" style="width: 398px; height: 598px;"><img src="http://p3.pstatp.com/origin/3f240001a4f84996876d"
    data-src="http://p3.pstatp.com/origin/3f240001a4f84996876d" alt="" /> <a href="http://p3.pstatp.com/origin/3f240001a4f84996876d"
    title="查看原图" target="_blank" ga_event="view_original_photo" class="image-origin"><i class="bui-icon icon-enlarge"
      style="font-size: 14px; color: rgb(255, 255, 255);" /></a></div>
로그인 후 복사

사실 문제는 xmlns="http://www.w3.org/1999/xhtml"에 있습니다. pyquery로 구문 분석되는 기본 문서입니다. xmlns 형식이며 이 형식으로 인해 기본 태그를 얻을 수 없습니다.

 doc = pq(browser.page_source,parser="html")
로그인 후 복사

해법은 파싱시 parser="html"을 설정해 주면 문제가 해결됩니다.

위 내용은 pyquery 파서가 태그 이름 dom node를 얻을 수 없는 문제에 대한 솔루션의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:segmentfault.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿