2017-11-20 9 views
3

나는이 버전과 다른 버전을 사용하지 않으려 고 시도 했습니까? 아무도 도와 줄 수 있습니까?importxml을 사용하여 Google 스프레드 시트를 가져 오는 중

=IMPORTXML("http://performance.morningstar.com/fund/ratings-risk.action?t=MWTRX", "//*[@id='div_ratings_risk']/table/tbody/tr[4]/td[3]/text()") 
+0

안녕하세요! 하나가 아니라 여러 이유가있을 수 있습니다. 1. Google도 html 문서를 파싱하지만 html도 올바른 형식이어야합니다. 이 문서는 구문 분석 할 수 없습니다. 2. Google은 아마도 동적으로 추가 된 콘텐츠가 아닌 소스를 파싱합니다. 귀하의 Xpath에서 참조하는 div # div_ratings_risk이 소스에 채워지지 않습니다. Chrome 브라우저에서보기 소스 : http : //performance.morningstar.com/fund/ratings-risk.action? t = MWTRX를 확인하여 직접 확인하십시오. – matths

+0

이 답변을 확인하고 싶을 수도 있습니다 : https://stackoverflow.com/questions/34217955/importxml-imported-content-empty 귀하의 경우 jQuery에서 구문 분석하려고하는 테이블을 표시하기 위해 가져온 URL은 http : //입니다. performance.morningstar.com/ratrisk/RatingRisk/fund/rating-risk.action?&t=XNAS:MWTRX®ion=usa&culture=en-US&cur=&ops=clear&s=0P00001G5L&ep=true&comparisonRemove=null&benchmarkSecId=&benchmarktype= – matths

답변

1

으로는 처음 아이디 #div_ratings_risk와 DIV 요소가 초기에 비어있는 테이블로 구성하지 않고, 원래의 질문에 대한 의견 설명했다. Google 스프레드 시트는 거기에없는 콘텐츠를 먼저 구문 분석 할 수 없지만 먼저로드해야합니다.

enter image description here

내용 (표) 동적으로 다른 URL에서 jQuery를 사용하여로드하여 구글 스프레드 시트로 데이터를 가져보십시오. 예를 들어 URL을 사용할 수 있습니다. XHR 요청을위한 크롬 개발자 도구 및 필터 당신이 작동 할 수 HTML에서 직접 내용을 분석하면

enter image description here

. 따라서 수식을 해당 URL로 변경하고 XPath를 다음과 같이 변경해야합니다.

=IMPORTXML("http://performance.morningstar.com/ratrisk/RatingRisk/fund/rating-risk.action?&t=XNAS:MWTRX&region=usa&culture=en-US&cur=&ops=clear&s=0P00001G5L&ep=true&comparisonRemove=null&benchmarkSecId=&benchmarktype=", "//table/tbody/tr[4]/td[3]/text()") 
+0

감사합니다. 오늘 새로운 것을 배웠습니다. – rearThing