📜  使用Python自动连接链接

📅  最后修改于: 2022-05-13 01:54:36.419000             🧑  作者: Mango

使用Python自动连接链接

LinkedIn 连接对于 IT 专业人员来说是一件非常重要的事情,因此我们需要向很多对我们有用的人发送连接请求。但有时一次发送一个连接请求可能有点烦人和忙碌。自动化这项工作会很好,但如何?
Python来拯救!
在本文中,我们将学习如何使用Python自动接受 LinkedIn 连接。
所需模块

  • Selenium – Selenium没有内置在Python中。要安装selenium ,请在终端中输入以下命令。
pip install selenium
  • Pyautogui – Pyautogui 也没有内置于Python中。要安装 pyautogui,请在终端中输入以下命令。
pip install pyautogui
  • Chrome 网络驱动程序– 要下载 chrome 网络驱动程序,请单击此处。

下面是实现。
首先,让我们导入所有重要的东西。

# connect python with webbrowser-chrome
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import pyautogui as pag

现在,让我们编写 main函数-

def main():
    # url of LinkedIn
    url = “http://linkedin.com/"  
    # url of LinkedIn network page
    network_url = “http://linkedin.com / mynetwork/" 
    # path to browser web driver
    driver = webdriver.Chrome('C:\\Program Files\\Web Driver\\chromedriver.exe'')
    driver.get(url)

# Driver's code
if __name__ == __main__:
    main()

我们需要进入认证页面,然后我们需要登录。这是代码-

def login():
    # Getting the login element
    username = driver.find_element_by_id(“login-email”)  
    # Sending the keys for username     
    username.send_keys(“username”)       
    # Getting the password element                            
    password = driver.find_element_by_id(“login-password”) 
    # Sending the keys for password   
    password.send_keys(“password”)               
    # Getting the tag for submit button           
    driver.find_element_by_id(“login-submit”).click()         

find_element_by_id 用于查找 HTML 标签 'login-email' 和 'login-password' 然后我们发送它们的密钥。
接下来,我们进入网络部分——

def goto_network():
    driver.find_element_by_id(“mynetwork-tab-icon”).click()

现在,LinkedIn 试图阻止抓取,因此找到连接按钮可能有点棘手。所以你需要努力并以某种方式找到连接按钮的位置(你可以使用一些技术,比如Xpath)。
发送请求的代码-

def send_requests():
    # Number of requests you want to send
    n = input(“Number of requests: ”)   

    for i in range(0, n):
        # position(in px) of connection button 
        # will be different for different user
        pag.click(880, 770)  
    print(“Done !”)

要单击所需位置,我们使用 pyautogui 即 pag.click(, )。所以这就是我们可以自动发送LinkedIn连接的方式。
这是完整的代码-

Python3
# connect python with webbrowser-chrome
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import pyautogui as pag
  
  
def login():
 
    # Getting the login element
    username = driver.find_element_by_id("login-email")
 
    # Sending the keys for username     
    username.send_keys("username")
 
    # Getting the password element                                 
    password = driver.find_element_by_id("login-password")
 
    # Sending the keys for password   
    password.send_keys("password")     
 
    # Getting the tag for submit button                    
    driver.find_element_by_id("login-submit").click()        
  
def goto_network():
    driver.find_element_by_id("mynetwork-tab-icon").click()
  
def send_requests():
 
    # Number of requests you want to send
    n = input("Number of requests: ")
   
    for i in range(0, n):
        # position(in px) of connection button
        pag.click(880, 770) 
    print("Done !")
  
def main():
 
    # url of LinkedIn
    url = "http://linkedin.com/" 
 
    # url of LinkedIn network page
    network_url = "http://linkedin.com / mynetwork/"  
 
    # path to browser web driver
    driver = webdriver.Chrome('C:\\Program Files\\Web Driver\\chromedriver.exe')    
    driver.get(url)
 
# Driver's code
if __name__ == __main__:
    main()


输出画面:

所有,连接已发送!