각 스레드의 회신 수를 등록하면서이 mailing list의 모든 제목을 추출하려고합니다. 모든 제목을 포함 방화범 상기 <ul>
로는 XPath에 따르면 Scrapy는 Firebug가 나열한 "tbody"및 "ul"요소를 식별 할 수 없습니다.
/HTML/바디/[표 2]/TBODY/TR 1/TD [2]/표/TBODY/TR/TD/UL 내가 직접 Scrapy 쉘이 붙여 넣을 경우
그러나, 빈 목록을 얻을 것입니다 : 시행 착오 후
scrapy shell http://seclists.org/fulldisclosure/2002/Jul/index.html
response.xpath('/html/body/table[2]/tbody/tr[1]/td[2]/table/tbody/tr/td/ul')
[]
를 (I 이후 주어진 Selector의 즉각적인 하위 요소를 나열하는 방법을 문서에서 찾아 낼 수 없다는 것을 알 수 있습니다. (내가 알고 있다면 알려주십시오.) Xpath에서 "tbody"요소가 작동하지 않는다는 것을 알았습니다.
almost_email_threads = response.xpath('/html/body/table[2]/tr[1]/td[2]/table/tr/td')
그러나, 나는 도달 "UL"지금하려고하면 작동하지 않습니다 : 그들을 제거함으로써, 내가 /td
까지 탐색 할 수 있었다 지금
email_threads.xpath('/ul')
[]
를, 무엇을 나에게 가장 혼란 그 실행은 다음과 같습니다
response.xpath('/html/body/table[2]/tr[1]/td[2]/table/tr/td//ul')
이하지만 웹 사이트에 나타나는와 같은 순서, 나에게 UL의의를 제공 할 것입니다. 스레드를 건너 뛰고 다른 순서로 건너 뜁니다. 또한 스레드 당 응답량을 계산할 수없는 것처럼 보입니다.
무엇이 여기에 있습니까? 내가 Scrapy를 사용해 본지 꽤 오래되었지만, 알아 내기가 어렵다는 것을 기억하지 못하고 어떤 이유로 든 Bing이나 Google에서 나에게 도움이되지 않는 튜토리얼을 생각해보십시오.
고맙습니다. 여기에서 일하는 것 같습니다. Spacy에서 선택자를 나열하는 방법에 대한 답을 알고 있거나 다른 조언을 원한다면 기다릴 것입니다. 그렇지 않다면 여기에서 답을 수락하겠습니다. 나는 또한 당신의 대답을 upvoted. 내 질문과 대답이 모두 왜곡 된 이유를 알고 있습니까? 그들이 평이한 downvoting 대신에 개선하기 위해 논평하지 않을 때 개선하기가 어렵습니다. –
답장과 선택자의 자녀 수를 얻는 방법을 보여주기 위해 답을 업데이트했습니다.귀하의 질문에 대한 아래 투표에 관해서는 추측 할 수만 있습니다. MCV 예제와 적어도 하나의 포맷 오류가 포함되어 있다고 주장 될 수 있습니다. http://stackoverflow.com/help/how-to-ask를 보시면 도움이 될 것입니다. 그러나 나는 설명 적 주석을주지 않고 downvote하는 것이 무례한 것으로 생각한다. – Markus
친절하게 감사드립니다. 나는 너의 대답을 받아 들였다. –