이상을 작성하면 요청에 대해 스파이를 찾아야합니다. 와이어. Chrome의 네트워크 탭을 사용하여 http 트래픽을 볼 수 있지만 개인적으로 저는 Charles를 좋아합니다. 어쨌든, 더 많은 버튼을 클릭했을 때 어떤 일이 일어나는지 확인하면 POST 요청이 (AJAX를 사용하여) 다음과 같이 보일 것입니다 :
http://seekingalpha.com/account/ajax_headlines_content 200 POST seekingalpha.com/account/ajax_headlines_content 432 헤더에서
전체 MS 5.94 KB params 객체를 파라미터는 다음과 같습니다
유형 모든 2 페이지 슬러그 내가 당신이라면 is_symbol_page가
그래서 난 그냥 모방 것 사실 msft를 그 POST 요청을함으로써 위 당신이 원하는 모든 내용을 얻을 때까지 페이지 매개 변수가 세어납니다. 그런데 반환 된 내용은 HTML 파편이므로 분석하기 쉽습니다. 예 :
> <div class="symbol_articles_list mini_category">
> <div>
> <ul>
> <li>
> <div class="fl">
> <a class="small_picture" href="/author/the-part-time-investor">
> <img height="20" width="20" src="http://static1.cdn-seekingalpha.com/images/users_profile/000/541/113/small_pic.png?1352646193"/>
> </a>
> </div>
> <div class="content">
> <div class="symbol_article">
> <a href="/article/1109901-microsoft-and-4-other-undervalued-stocks"
> sasource="portfolio_rel">Microsoft And 4 Other Undervalued Stocks</a>
> <div class="date_on_by">
> <a sasource="portfolio_rel" href="/author/the-part-time-investor">The Part-time Investor</a>
> <span class="bullet">•</span>
> Mon, Jan 14<span class='bullet'>•</span> <span class='comments'><a
> href='/article/1109901-microsoft-and-4-other-undervalued-stocks#comments_header'
> sasource='headlines_tabs'>44 Comments</a></span>
> </div>
> </div>
> </div>
> <div class="cleaner"></div>
> </li>
빠른 답변을드립니다. "페이지 매개 변수를 계산하여 POST 요청을 만들어서 에뮬레이트하는 것"을 의미 할 수 있습니까? 필자는 전에 이것을 한 번도 해 본 적이 없으므로 특정 매개 변수로 POST 요청을 에뮬레이트하는 방법을 잘 모릅니다. – Art
나는 Jsoup을 사용 해본 적이 없다는 점에서 유감 스럽지만, 자바 문서를 살펴보면 다음과 같이 생각할 것입니다 : Jsoup.connect ("http://seekingalpha.com/account/ajax_headlines_content") .data ("type data "("slugs ","msft ") 데이터 ("is_symbol_page ","true ") post(); – rainkinz
감사합니다. 작동하도록했습니다 :) – Art