我正在试图从LinkedIn获取数据。我想刮掉我的联系。我已经用Python,BeautifulSoup和Selenium编写代码来获取我的连接并进入连接的配置文件页面。然后它可以刮掉我连接的前10个连接但我无法用下一个按钮做任何事情。
我使用Selenium和Python代码选择按钮:
inputElement = driver.find_element_by_css_selector("button.next.carousel-control-disabled")
inputElement.click()
如果我在物理上(使用浏览器和鼠标按钮)单击此元素,则会加载下一个10个连接但是当我使用该脚本时,它会显示以下错误消息。
元素在点(616,15)处不可点击。其他元素会 收到点击:
我已经尝试过检查元素了,我得到了:
<button class="next carousel-control-disabled">Next</button>
我认为这意味着有等待点击元素的JavaScript。那有意义吗?如果是这样,我怎样才能找到该函数的名称,然后运行该JavaScript?
答案 0 :(得分:0)
我将inputElement.click()
更改为inputElement.send_keys(Keys.RETURN)
并且它正在运行。
如果有人愿意解释我感兴趣的两者之间的区别。
答案 1 :(得分:0)
**
**
#Scrolling a full-page
def scroll_till_end():
try:
html = driver.find_element_by_tag_name('html')
html.send_keys(Keys.END)
except Exception as e:
print(str(e))
#moving to next page
def next_page():
next_button=driver.find_element_by_xpath('//button[@aria-label="Next"]')
driver.execute_script("arguments[0].click();", next_button)
time.sleep(4)
对我有用。使用selenium导航到连接列表,然后运行以下命令:
pages_to_scrape=input('Enter the number of pages to scrape:')
for i in range(pages_to_scrape):
scroll_till_end()
get_profile_of_a_page() # profile scrapping function!
scroll_till_end()
next_page()
time.sleep(4)