element登录页面_python爬虫另辟蹊径绕过企查查的登录验证,我太冇财了

33563ea59ce059f30a16d01913e4522e.gif

从企查查爬取企业信息,如果没有登录直接检索,邮箱、电话都被隐藏了

3dc112e2e232fe5881401dda8562ec36.png

点击详情,部分信息同样会被隐藏

5818bba2b82611046dcf2ece14904c55.png

b55e1f146e4d21d00f543a89b3d55b24.png

毕竟只是打工的,没钱不能任性!

想要查看更完整的企业信息,只有登录了。

03e7278016ce947111156c4acdcc8e2c.png

但登录需要滑块验证,有时可能还会有图片验证码

76668b7db27008a02ec79216eca98fce.png

但我干不过他们,老大不提供资金支持,那就只能另辟蹊径了。

突然看到右下角有三小只,不禁有点想法了
是不是可以通过授权的形式进行登录呢,那就开始吧

919a51b5013a6332c738aaf85c40fc38.png

那就拿三小只试试:

3802cc2a2d32bb7c7c2f39ff47a15cfe.png

dc646291c62d57a2ca7b1523dfcddbc5.png

首先通过微博登录,将该绑定的绑定,该授权的授权,避免登录后让验证
(微博授权 + 手机号绑定 + 竟然还让关注了公众号)

账号准备完毕,上代码

from selenium import webdriver
import time
import xlwt
import sys
import imp
imp.reload(sys)

# 伪装成浏览器,防止被识破
option = webdriver.ChromeOptions()
option.add_argument(
    '--user-agent="Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.146 Safari/537.36"')
driver = webdriver.Chrome(chrome_options=option)

# 打开登录页面
driver.get('https://www.qichacha.com/user_login')

# 单击用户名密码登录的标签
tag = driver.find_element_by_xpath('//*[@id="normalLogin"]')
tag.click()

tag = driver.find_element_by_xpath('//*[@class="btn-weibo m-l-xs"]')
tag.click()

# 将用户名、密码注入
driver.find_element_by_id('userId').send_keys('微博账号')
driver.find_element_by_id('passwd').send_keys('微博密码')
time.sleep(3)  # 休眠,人工完成验证步骤,等待程序单击“登录”

# 单击登录按钮
btn = driver.find_element_by_xpath('//*[@id="outer"]/div/div[2]/form/div/div[2]/div/p/a[1]')
btn.click()
time.sleep(10)

# inc_list = ['阿里巴巴', '腾讯', '今日头条', '滴滴', '美团']
# inc_len = len(inc_list)

driver.find_element_by_id('searchkey').send_keys("腾讯")
# 单击搜索按钮
srh_btn = driver.find_element_by_xpath('//*[@id="indexSearchForm"]/div/span/input')
srh_btn.click()


# 获取首个企业文本
inc_full = driver.find_element_by_xpath('//*[@id="search-result"]/tr[1]/td[3]/a').text
print(inc_full)
money = driver.find_element_by_xpath('//*[@id="search-result"]/tr[1]/td[3]/p[1]/span[1]').text
print(money)
date = driver.find_element_by_xpath('//*[@id="search-result"]/tr[1]/td[3]/p[1]/span[2]').text
print(date)
mail_phone = driver.find_element_by_xpath('//*[@id="search-result"]/tr[1]/td[3]/p[2]').text
print(mail_phone)
addr = driver.find_element_by_xpath('//*[@id="search-result"]/tr[1]/td[3]/p[3]').text
print(addr)
try:
    stock_or_others = driver.find_element_by_xpath('//*[@id="search-result"]/tr[1]/td[3]/p[4]').text
    print(stock_or_others)
except:
    pass

# 获取网页地址,进入
inner = driver.find_element_by_xpath('//*[@id="search-result"]/tr[1]/td[3]/a').get_attribute("href")
driver.get(inner)

# 单击进入后 官网 通过href属性获得:
inc_web = driver.find_element_by_xpath(
    '//*[@id="company-top"]/div[2]/div[2]/div[3]/div[1]/span[3]/a').get_attribute("href")
print("官网:" + inc_web)
print(' ')

driver.close()

信息获取完整,ok

e3ead48906d69c510b1ba158c28a08b4.png

0c2b7cfb56515c655af718f555567a87.png

9bdac2ccedce69d5457f45b0767e657c.gif
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值