-
카테고리
-
세부 분야
데이터 분석
-
해결 여부
미해결
스크롤 관련 질문드립니다.
18.06.06 08:25 작성 조회수 139
0
선생님, 안녕하세요?
또 어려움에 봉착했습니다.
상황은 아래와 같습니다.
- 글자에 하퍼링크가 있어서 클릭을 하면 사이트로 이동하기에 href 안에 URL을 가져오려 했습니다.
- href = '#'으로 html이 구성이 되어있네요 ㅎㅎ
- 그래서 직접 xpath 규칙을 찾아서 하나하나 element 클릭해서 링크클릭하려고 했습니다.
- 하필 문제가 전체스크롤창 안에 Inner 스크롤창으로 구성이 되어서요. 이것을 스크롤해야 추가로 html들이 업데이트가 됩니다. (제 설명이 어떤 의미인지 모르실 것 같아서 링크 추가합니다.
- http://jcr.incites.thomsonreuters.com/JCRHomePageAction.action?#
- 이런경우 특정 element에서 스크롤을해서 다시 xpath 찾아서 클릭하려고 하는데,, inner 스크롤을 조작하는건 아무리 구글링해도 안나와요.
- 이러한 안타까운 경우에는 도대체 어떻게 해야하는지 self-study라도 하겠습니다. 꼭 가이드만 이라도 주십시요 ㅠ 혹시 이런경우에 Scrapy라는 걸 쓰는건가요 ㅎㅎㅎ?
선생님 덕분에 요즘 정말 너무 너무 크롤링 하는게 즐겁습니다.
역시 이게 하면 할수록 요령도 생겨서 매번 감사드립니다!
답변을 작성해보세요.
0
0
좋은사람
지식공유자2018.06.08
단계씩 하려면 코드로 작성을 잘 하셔야 겠네요.
마우스 이벤트 중에 클릭 이벤트 등을 활용하거나 move 이벤트 등으로 브라우저에 이벤트를 전달 후
가져와야 될 것같습니다.
http://artoftesting.com/automationTesting/handling-mouse-events-in-selenium.html
0
Seongmin Lee
질문자2018.06.08
선생님 inner스크롤이라고 하니 참 저도 이해가 안갔네요 ㅎㅎ
원래 브라우저 키면 오른쪽에 스크롤할 수 있는 bar가 있자나요.
그런데 그 스크롤bar가 안쪽에 하나 더 있네요.
그 스크롤bar를 아래로 움직여야 크롬개발자에 html이 추가로 업데이트가 되더라구요.
그 안쪽에 스크롤Bar 를 움직이는 액션을 주고 싶은데요.(마우스로 한번 한번씩 단계적으로 클릭)
아무리 구글링해도 방법을 모르겠습니다 ㅠ
도움될 만한게 있을까요?
0
좋은사람
지식공유자2018.06.06
안녕하세요.
inner 스크롤이라는 무슨말인지 잘 모르겠네요!
어떤 액션을 준 후 그 뒤에 url 및 html이 업데이트 되는 형식으로 되어 있다면 비동기로 구성되어 있는건데
그때는 그에 맞는 셀레니움으로 액션을 준후 ajax로 html 랜더링 후 파싱을 해서 가져오는 수밖에 없습니다.
많은 사이트들이 비동기로 후 렌더링 방식을 가지고 있는 있습니다. 그에 맞게 크롤링을 하려면 브라우저에
행하는 액션을 줘야 될 것같습니다.
스크랩피하고는 관련은 없습니다.
감사합니다.
답변 4