beautiful_天眼查

import re
import os
import time
import pandas as pd
import requests
from bs4 import BeautifulSoup
import random
# 这是没有登录的状态下爬取的数据,如果需要更多,则需要添加账号登录后 的cookie参数信息。当然也会增加封号的风险

url = 'https://m.tianyancha.com/search/oc35-s2'
header = {'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.42 Safari/537.36'}
# proxy = [{'http': 'http://58.212.42.116:36708'}, {'http':'http://117.57.91.53:9999'}, {'http':'123.169.35.184:9999'}]
response = requests.get(url,headers = header) #proxies = random.choice(proxy)
response.encoding = 'utf-8'
soup = BeautifulSoup(response.text,'lxml')  # 对html进行解析,完成初始化
html = soup.select('div .search-company-item')  # select和find_all 不同点在于,一个是用空格间隔,一个是用,号分割  .表示是类名

datalist =[]
for index,one in enumerate(html):

    print('正在爬取第%s个公司'%(index+1))
    # 公司名字
    name = one.find('div','search-name').text
    
    # 公司状态
    status = one.find('div', 'company-status atag-common -normal-bg').text

    # 检查发现,所有的信息都是在各个title-name下面,所有这里直接一次取出所有的title_name,并且通过切片进行分类查找
    # 如果每次单独取出,会导致信息去到别的信息

    # 法人代表
    person = one.find('div', 'search-company-content').select('div .title-name')[0].text.split('法定代表人')[1]

    # 注册资本
    money = one.find('div', 'search-company-content').select('div .title-name')[1].text.split('注册资本')[1]

    # 注册时间
    date = one.find('div', 'search-company-content').select('div .title-name')[2].text.split('成立日期')[1]

    # 数据存储
    datalist.append([name, status, person, money, date])
    time.sleep(random.randint(6,10))

        
df = pd.DataFrame(datalist,columns = ['公司名称','公司状态','法人代表','注册资本','注册时间'])
df.to_excel(r'./天眼查公司信息.xlsx',index=False)  # 注意事项,文件后缀必须要有,这是血的教育
print('爬取完成')

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

半两风

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值