동적 데이터 파싱하는 방법 js 파일로 표시되는 데이터 파싱하는 php방법은?
본문
https://m.blog.naver.com/PostList.nhn?permalink=permalink&blogId=아이디
를 하면 블로그 조회수 등의 정보가 나오는데
소스 보기를 하면
<script src="https://ssl.pstatic.net/t.static.blog/nmobile/versioning/NgTemplate-471128138_https.js" type="text/javascript" charset="UTF-8"></script>
이렇게 되어 있어서 파싱이 어렵네요.
소스보기로 하면 값을 못가지고 오고 js로 하면 변수명으로 나와서
전체 방문자 나 이웃 숫자를 자동으로 확인하려면
어떻게 접속해야 하나요?
php로 코딩방법 알려주시면 감하겠습니다.
블로그에 접속해서 조회수나 이웃숫자를 크롤링 하려는데 잘 안되네요
답변 3
Html dom 접근방법으로 해보세요
소스보기시 데이터가 없으니 당연히 표시가 안될것이고 페이지 로드후 데이터가 돔에 기록될
터이니 해당열의 html내용이나 텍스트 내용을 가져오면 됩니다 스누피등 파서 전문 라이브러리를 사용해보세요
스누피등으로 파싱을 한다면 서버에서 파싱을 못하도록 막아 놓지 않은 이상
html돔음 전부 가져올수 있습니다
정규식등을 이용해서 적절하게 쪼개거나 필요한 부분을 뗴어내서 값을 가져오면 될텐데요...
js파일을 접근해서 값을 가져오는게 아닌 이미 로드된 html에 기록된 값을 가져와야 합니다
크롬 브라우저등을 사용해서 개발자 모드를 보시면 어느 부분의 dom을 뗴어내어 가공해야 하는지
알 수 있을 것 같습니다
소스 보기시 아래와 같이 나옴을 확인할수 있습니다
<em class="u_cnt _count">2</em>
그러니 원하는 2만 값으로 취하면 되겠죠
파이썬에서는 구현했는데 php로는 file_get_contents 할때 js부분의 소스를 가져올수가 없네요. 소스로만 보이면 가져올텐데 html로는 보이는데 file_get_contents로는 js로만 표시되어서 못하고 있습니다.