Twitter에 로그인하고 다음 페이지로 이동 한 간단한 웹 크롤러가 있습니다. 다음 페이지로 이동 한 다음 내 팔로어 (정보가 음소거 된 경우 등)의 정보를 가져옵니다. 기어 아이콘입니다. 문제는 새 컴퓨터에서 클릭 기능이 작동하지 않는 것입니다.python, selenium 및 pyvirtualdisplay로 웹 요소를 클릭하는 데 문제가 있습니다.
또한 Firefox() 웹 드라이버를 사용하고 있습니다. 여기
내가 (트위터가 작동 얻기 위해 당신은 당신의 자신의 자격 증명을 추가해야합니다) 사용하고있는 코드입니다 : https://gist.github.com/anonymous/4c64054d01af77ae2c5c2b39a2165d80이 코드는 하나 개의 시스템에 완벽하게 잘 작동하지만 DOM 요소를 클릭하여 실패 다른. 다음은 통찰력을 제공 할 수있는 몇 가지 사양입니다. 나는 "나쁜 상자"에이 코드를 실행하고 예외를 포착하지 않는 경우
::GOOD BOX::
pip packages
- selenium 2.47.3
- pyvirtualdisplay 0.1.5
python 2.7
firefox 41.0
lib32z-dev 1:1.2.8.dfsg-1ubuntu1
python-lxml 3.3.3-1ubuntu0.1
python-dev 2.7.5-5ubuntu3
build-essential 11.6ubuntu6
-------------------------
::BAD BOX::
pip packages
- selenium 2.53.6
- pyvirtualdisplay 0.2
python 2.7
firefox-mozilla-build 47.0.1-0ubuntu1 (not sure why I need this, the other box doesn't seem to have it. But things break if I remove it)
firefox 47.0.1
python-dev 2.7.11-1
libxml2-dev 2.9.3+dfsg1-1ubuntu0.1
libxslt-dev (1.1.28-2.1)
build-essential 12.1ubuntu2
, 나는 다음과 같은 얻을 :
selenium.common.exceptions.WebDriverException: Message: Element is not clickable at point (464, 1). Other element would receive the click: <div class="container"></div>
예외 분명히 다른 요소가 클릭 수단을받을 것이라고 주장한다 당신의 실제 요소는 div 요소 인 다른 요소에 의해 겹쳐집니다. 요소를 오버레이하는 페이지의 일부 진행 막대가 여전히 요소를 찾을 때 가능할 수 있습니다. 따라서 요소를 클릭 할 수있을 때까지 WebDriverWait을 사용하여 기다릴 필요가 있습니다. :) –
요소를 찾기 전에 기다려야합니까, 아니면 클릭하기 전에 기다려야합니까? – Tyrick
WebDriverWait를 사용하여 요소를 찾는 동안 기다려야합니다. :) –