zoukankan      html  css  js  c++  java
  • 模拟登陆+数据爬取 (python+selenuim)

    以下代码是用来爬取LinkedIn网站一些学者的经历的,仅供参考,注意:不要一次性大量爬取会被封号,不要问我为什么知道

    #-*- coding:utf-8 -*-
    from selenium import webdriver
    from selenium.webdriver.common.keys import Keys
    import time
    from bs4 import BeautifulSoup
    
    diver=webdriver.Chrome()
    diver.get('https://www.linkedin.com/')
    #等待网站加载完成
    time.sleep(1)
    #模拟登陆
    diver.find_element_by_id('login-email').send_keys(用户名)
    diver.find_element_by_id('login-password').send_keys(密码)
    # 点击跳转
    diver.find_element_by_id('login-submit').send_keys(Keys.ENTER)
    time.sleep(1)
    #查询
     diver.find_element_by_tag_name('input').send_keys(学者名)
    diver.find_element_by_tag_name('input').send_keys(Keys.ENTER)
    time.sleep(1)
    #获取当前页面所有可能的人
    soup=BeautifulSoup(diver.page_source,'lxml')
    items=soup.findAll('div',{'class':'search-result__wrapper'})
    n=0
    for i in items:
    n+=1
    title=i.find('div',{'class':'search-result__image-wrapper'}).find('a')['href']
    diver.get('https://www.linkedin.com'+title)
    time.sleep(3)
    Soup=BeautifulSoup(diver.page_source,'lxml')
    # print Soup
    Items=Soup.findAll('li',{'class':'pv-profile-section__card-item pv-position-entity ember-view'})
    print str(n)+':'
    for i in Items:
        print i.find('div',{'class':'pv-entity__summary-info'}).get_text().replace('
    ','')
    diver.close()
  • 相关阅读:
    MySQL客户端mysqladmin命令
    13 Linux磁盘管理
    12 Linux软件管理
    11 Linux压缩打包
    09 Linux输入输出
    08 LinuxACL控制
    07 Linux特殊权限
    06 Linux基本权限
    05 Linux用户管理
    04 Linux文件编辑
  • 原文地址:https://www.cnblogs.com/ybf-yyj/p/8059171.html
Copyright © 2011-2022 走看看