scrapy-splash는이 페이지를 렌더링 할 수 없습니다. 동적 콘텐츠가 렌더링되지 않습니까?

MikolajM

최근에 Scrapy-Splash 플러그인을 사용하기로 결정했지만 Splash가이 사이트를 렌더링 할 수 없습니다 http://orka.sejm.gov.pl/proc6.nsf/

# -*- coding: utf-8 -*-
import scrapy
from scrapy_splash import SplashRequest


class BasicSpider(scrapy.Spider):
    name = 'basic'

    start_urls = ['http://orka.sejm.gov.pl/proc6.nsf/']


    def start_requests(self):
            for url in self.start_urls:
                yield SplashRequest(url, callback=self.parse,
                    endpoint='render.html',
                    args={'wait': 20},)



    def parse(self, response):
        item = {}
        item["data"] = response.xpath('//html').extract()
        return item 

따라서 결과는 다음과 같습니다.

['<html><head>\n<title>Proces Legislacyjny 6 kadencja</title>\n<script language="JavaScript" type="text/javascript">\n<!-- \nself._domino_name = "_Main";\n// -->\n</script>\n</head>\n\n<frameset frameborder="0" border="0" cols="169,1*">\n\n<frame frameborder="0" noresize name="Left" src="/proc6.nsf/start?OpenPage&amp;BaseTarget=Main">\n\n<frameset frameborder="0" rows="70,1*">\n\n<frame frameborder="0" noresize scrolling="no" name="Maintop" src="/proc6.nsf/pgHeader?OpenPage">\n\n<frame frameborder="0" noresize name="Main" src="/proc6.nsf/Przebieg%20procesu%20legislacyjnego%20-%20projekty%20ustaw?OpenView">\n</frameset>\n</frameset>\n\n</html>']

분명히 일반 브라우저로 사이트를 방문 할 때와 동일하지 않다는 것을 알 수 있습니다. 테이블 데이터와 링크 및 멋진 태그가 없습니다.

Scrapy-Splash에 뭔가 빠졌습니다.

타룬 랄 와니

스플래시가 페이지를 올바르게 렌더링하지만 메인 페이지의 html을 반환하고 내부 프레임이 아닌 render.html을 사용하고 있습니다. 이 경우 render.json iframes을 1 설정 해야합니다 .

자세한 내용은 아래 문제를 참조하십시오.

https://github.com/scrapinghub/splash/issues/413

편집 -1

페이지에서 아래 Lua 스크립트를 실행했으며 모든 프레임의 내용을 제공합니다.

function main(splash, args)
  assert(splash:go(args.url))
  assert(splash:wait(5))

  local getFramesHtml = splash:jsfunc([[
   function test() { 
      var data = [];
      for (var i = 0 ; i < window.frames.length; i++)
       {
          data.push(window.frames[i].document.documentElement.outerHTML);
       }
      return data;
    }
    ]]);

  return {
    html = splash:html(),
    frames = getFramesHtml()
  }
end

스플래시 응답

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

JSX 콘텐츠를 별도의 파일로 이동할 때 제대로 렌더링되지 않습니다.

분류에서Dev

JSX 콘텐츠를 별도의 파일로 이동할 때 제대로 렌더링되지 않습니다.

분류에서Dev

사진을 클릭 할 때 동적 콘텐츠를 내 모달로 렌더링 할 수 없습니다.

분류에서Dev

사진을 클릭 할 때 동적 콘텐츠를 내 모달로 렌더링 할 수 없습니다.

분류에서Dev

사진을 클릭 할 때 동적 콘텐츠를 내 모달로 렌더링 할 수 없습니다.

분류에서Dev

Android 용 GoogleMaps v2 :지도가 렌더링되는 동안 마커를 제거 할 수 없습니다.

분류에서Dev

OpenGL에서 셰이더를 적용 할 때 텍스처가 렌더링되지 않습니다.

분류에서Dev

경고 : 타일 메모리 제한을 초과했습니다. 일부 콘텐츠는 그릴 수 없으며 ChromeDriver Selenium을 사용하여 긴 페이지를 렌더링하는 동안 스크린 샷을 캡처 할 수 없습니다.

분류에서Dev

Angular UI Router로 사전 렌더링이 루트 페이지 동적 콘텐츠를 렌더링하지 않음

분류에서Dev

jqGrid는 잘 렌더링되지만 getGridParam에 액세스 할 수 없습니다.

분류에서Dev

Laravel 5에서 페이지 매김을 렌더링 할 수 없습니다.

분류에서Dev

Angular Universal (SSR)을 사용하여 콘텐츠가있는 콘텐츠를 렌더링 할 수 없음

분류에서Dev

React : 왜 '이름'변수가 렌더링 안에 표시되지 않습니까?

분류에서Dev

Typo3 업데이트 : f : debug를 사용하지 않으면 부분적으로 변수 콘텐츠를 렌더링하지 않습니다.

분류에서Dev

React에서 API의 데이터를 렌더링 할 수 없습니다. 오류가 표시되지 않습니다.

분류에서Dev

Angular 및 Cordova가 포함 된 하이브리드 앱 : IOS에서 렌더링되지 않는 동적 콘텐츠

분류에서Dev

뷰 / 라우터 : 어떻게 제대로 페이지의 콘텐츠를 렌더링하기 전에 데이터를 가져올 수 있습니까?

분류에서Dev

VueJS를 사용하여 이미지를 렌더링 할 수 없습니다.

분류에서Dev

React-Heroku에서 이미지를 렌더링 할 수 없습니다.

분류에서Dev

pdf : grails에서 이미지를 렌더링 할 수 없습니다.

분류에서Dev

Custom FontAwesome 아이콘이 렌더링되지 않습니다.

분류에서Dev

셰이더를 사용할 때 텍스처가 렌더링되지 않습니까?

분류에서Dev

React Native : 이미지가 렌더링되지 않습니다.

분류에서Dev

TCPDF png 이미지는 루프에서 렌더링 할 수 없습니다.

분류에서Dev

React App 내에서 API에서 가져온 이미지를 렌더링 할 수 없습니다.

분류에서Dev

HTML 링크가 페이지에 렌더링되지만 존재하지 않는 것처럼 작동합니다.

분류에서Dev

왜 봄 부팅은 우리가 적절한 항아리 참조를 추가 할 경우 페이지를 렌더링 할 수있는 동안 JSP 지원하지 않습니다

분류에서Dev

데이터 테이블을 렌더링 할 수 없습니다.

분류에서Dev

LuminanceFormat UnsignedShort가있는 DataTexture는 렌더링 할 수 없습니다.

Related 관련 기사

  1. 1

    JSX 콘텐츠를 별도의 파일로 이동할 때 제대로 렌더링되지 않습니다.

  2. 2

    JSX 콘텐츠를 별도의 파일로 이동할 때 제대로 렌더링되지 않습니다.

  3. 3

    사진을 클릭 할 때 동적 콘텐츠를 내 모달로 렌더링 할 수 없습니다.

  4. 4

    사진을 클릭 할 때 동적 콘텐츠를 내 모달로 렌더링 할 수 없습니다.

  5. 5

    사진을 클릭 할 때 동적 콘텐츠를 내 모달로 렌더링 할 수 없습니다.

  6. 6

    Android 용 GoogleMaps v2 :지도가 렌더링되는 동안 마커를 제거 할 수 없습니다.

  7. 7

    OpenGL에서 셰이더를 적용 할 때 텍스처가 렌더링되지 않습니다.

  8. 8

    경고 : 타일 메모리 제한을 초과했습니다. 일부 콘텐츠는 그릴 수 없으며 ChromeDriver Selenium을 사용하여 긴 페이지를 렌더링하는 동안 스크린 샷을 캡처 할 수 없습니다.

  9. 9

    Angular UI Router로 사전 렌더링이 루트 페이지 동적 콘텐츠를 렌더링하지 않음

  10. 10

    jqGrid는 잘 렌더링되지만 getGridParam에 액세스 할 수 없습니다.

  11. 11

    Laravel 5에서 페이지 매김을 렌더링 할 수 없습니다.

  12. 12

    Angular Universal (SSR)을 사용하여 콘텐츠가있는 콘텐츠를 렌더링 할 수 없음

  13. 13

    React : 왜 '이름'변수가 렌더링 안에 표시되지 않습니까?

  14. 14

    Typo3 업데이트 : f : debug를 사용하지 않으면 부분적으로 변수 콘텐츠를 렌더링하지 않습니다.

  15. 15

    React에서 API의 데이터를 렌더링 할 수 없습니다. 오류가 표시되지 않습니다.

  16. 16

    Angular 및 Cordova가 포함 된 하이브리드 앱 : IOS에서 렌더링되지 않는 동적 콘텐츠

  17. 17

    뷰 / 라우터 : 어떻게 제대로 페이지의 콘텐츠를 렌더링하기 전에 데이터를 가져올 수 있습니까?

  18. 18

    VueJS를 사용하여 이미지를 렌더링 할 수 없습니다.

  19. 19

    React-Heroku에서 이미지를 렌더링 할 수 없습니다.

  20. 20

    pdf : grails에서 이미지를 렌더링 할 수 없습니다.

  21. 21

    Custom FontAwesome 아이콘이 렌더링되지 않습니다.

  22. 22

    셰이더를 사용할 때 텍스처가 렌더링되지 않습니까?

  23. 23

    React Native : 이미지가 렌더링되지 않습니다.

  24. 24

    TCPDF png 이미지는 루프에서 렌더링 할 수 없습니다.

  25. 25

    React App 내에서 API에서 가져온 이미지를 렌더링 할 수 없습니다.

  26. 26

    HTML 링크가 페이지에 렌더링되지만 존재하지 않는 것처럼 작동합니다.

  27. 27

    왜 봄 부팅은 우리가 적절한 항아리 참조를 추가 할 경우 페이지를 렌더링 할 수있는 동안 JSP 지원하지 않습니다

  28. 28

    데이터 테이블을 렌더링 할 수 없습니다.

  29. 29

    LuminanceFormat UnsignedShort가있는 DataTexture는 렌더링 할 수 없습니다.

뜨겁다태그

보관