>  Q&A  >  본문

python - 如何爬取URL不变的网站内容

<a href="javascript:__doPostBack('AspNetPager1','3')" class="Pager" title="转到第3页" style="margin-right:5px;">[3]</a>
function __doPostBack(eventTarget, eventArgument) {
    if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
        theForm.__EVENTTARGET.value = eventTarget;
        theForm.__EVENTARGUMENT.value = eventArgument;
        theForm.submit();
    }

对于这种翻页方式,怎么用爬虫爬取呢?网站翻页后URL没有发生改变。我之前使用bs4和selenium模拟翻页操作再爬取,可是数据量太大,这种方法速度太慢。80%的时间都浪费在翻页上。

伊谢尔伦伊谢尔伦2740일 전1581

모든 응답(2)나는 대답할 것이다

  • 高洛峰

    高洛峰2017-04-18 10:15:25

    이 문제는 웹사이트에서 구체적으로 분석해야 합니다. 웹사이트마다 처리 방법이 다릅니다.
    이제 보다 일반적인 상황에서 다음 방법을 사용할 수 있다고 가정합니다.

    1. 브라우저 디버깅 모드 켜기

    2. 해당 네트워크 요청의 응답을 보려면 다음 페이지를 클릭하세요. 이 응답은 일반적으로 다음 페이지의 URL입니다

    3. 요청의 요청 헤더와 요청 매개변수를 보고, 패턴을 분석하고 찾습니다

    4. Python을 사용하여 일괄적으로 URL을 얻기 위한 HTTP 요청 시뮬레이션

    5. 크롤링 정보, HTML 구문 분석에 LXML 권장

    HTTP 요청을 시뮬레이션하는 방법은 Python을 참조하여 HTTP 요청을 시뮬레이션하세요

    회신하다
    0
  • 天蓬老师

    天蓬老师2017-04-18 10:15:25

    AJAX 요청이 있는 것 같으니 직접 요청을 받아보세요

    회신하다
    0
  • 취소회신하다