파이썬에서 html 구문 분석을 위해 lxml.html을 사용하고 있습니다. 브라우저에서 렌더링 한 후에 페이지 내의 요소 위치를 대략적으로 추정하고 싶습니다. 정확한 것은 아니지만 일반적으로 정확합니다. 간단히하기 위해 Javascript가 요소 위치에 미치는 영향을 무시합니다. 결과적으로 요소 (예 : lxml을 통해)를 반복하고 해당 x/y 좌표를 찾을 수 있기를 바랍니다. 이 작업을 수행하는 방법에 대한 의견이 있으십니까? lxml에 머무를 필요가 없으며 다른 라이브러리를 사용해 보니 기쁩니다.Python의 html 요소 위치
2
A
답변
5
PyQt는 :
import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.QtWebKit import *
class MyWebView(QWebView):
def __init__(self):
QWebView.__init__(self)
QObject.connect(self,SIGNAL('loadFinished(bool)'),self.showelements)
def showelements(self):
html=self.page().currentFrame().documentElement()
for link in html.findAll('a'):
print(link.toInnerXml(),str(link.geometry())[18:])
if __name__=='__main__':
app = QApplication(sys.argv)
web = MyWebView()
web.load(QUrl("http://www.google.com"))
web.show()
sys.exit(app.exec_())
+0
환상적입니다. 이 방법을 좀 더 명령 줄 친화적 인, 특히 자체적으로 종료 할 수있는 방법이 있나요? (또는 'url 시퀀스에서 작동합니까?'web.show() '제거하고'sys.exit (0) '쇼 요소의 끝에. – muckabout
0
Sven의 말처럼 HTML 렌더링 엔진이 필요합니다. 이전에 HTML 렌더링에 대한 질문이 제기되었지만이를 참조 할 수 있습니다. 웹킷과
관련 문제
- 1. Python의 배열 요소 계산하기
- 2. Python의 특정 배열 위치 선택
- 3. Python의 HTML 스 니펫
- 4. Python의 HTML 태그 클라우드
- 5. 다른 요소 위에 위치 요소
- 6. float 속성이있는 위치 지정 요소
- 7. jquery 요소 위치 지정 문제
- 8. HTML 요소
- 9. 상대 위치 요소 내 페이지 절대 위치 요소
- 10. 잘못된 요소 위치
- 11. 겹침없는 위치 요소
- 12. 안드로이드 위치 요소 화면에
- 13. WPF : 요소 위치 찾기
- 14. SVG 요소 위치 지정
- 15. 화면에서 요소 위치 찾기
- 16. CSS의 위치 (Z- 인덱스) 요소
- 17. 절대 위치 요소 위치 재 계산?
- 18. Python의 특정 JSON 요소 값을 얻으십시오.
- 19. 가변 길이의 요소 그리드에서 요소 위치 결정
- 20. 대각선으로 HTML 요소 배치
- 21. HTML 서버 컨트롤과 HTML 요소
- 22. Web.config의 변환 및 위치 요소
- 23. jQuery 자동 요소 위치 지정
- 24. 고정 컨테이너와 관련된 위치 요소
- 25. ASP.NET 위치 요소 재정의 행동
- 26. javascript로 요소 위치 가져 오기
- 27. jquery 요소 위치 저장 (직렬화?)
- 28. 목록 내의 요소 위치 찾기
- 29. jQuery를 받고 요소 상대적 위치
- 30. 절대 위치 요소 폭 문제
당신은이 정보를 얻을 수있는 HTML 렌더링 엔진이 필요합니다. 파서가 도움이되지 않습니다. –
또한 CSS의 효과를 고려해야합니다. 요즘에는 콘텐츠가 거의없이 렌더링됩니다. –