2017-11-09 5 views
0

에 HTML 엔티티를 해석 Scrapy, 나는 보통 그런 식으로 링크를 캡처 :은 크롤링 중에 추출물

response.xpath("//a[contains(@class, something)/@href").extract() 

을하지만 특정 페이지에 어떤 이유로 작동되지 않았습니다. 올바른 출력해야

['details?lm==true=1=A43', (...)] 

: 내가 배열에 수신 된 것은이 같은했다 ...

['details?lm=&printerView=true&accessType=1&id=A43', (...)] 

답변

0

언젠가 후에, 나는 파이어 폭스에서 동일한 페이지가 이상한 렌더링 된 것을 발견 내 크롤링되는 페이지가 HTML이 아닌 "text/xml"과 같은 content-type을 사용했기 때문에 문제가 발생했습니다.

sel = scrapy.Selector(text=response.body) 
sel.xpath("//a[contains(@class, something)/@href").extract() 

그리고 지금은 올바른 결과가 있습니다

내가 다른 선택을했던 내 코드를 해결하려면!

['details?lm=&printerView=true&accessType=1&id=A43', (...)]