python3爬虫实战(一)爬取创业邦创投库

来源:互联网 发布:android 聚合数据 编辑:程序博客网 时间:2024/05/17 22:48
  • 从创业邦网站拉取创业公司数据
  • 入口链接:http://www.cyzone.cn/event/list-764-0-1-0-0-0-0/,要求抓取前30页。
  • 抓取以下信息:公司名称,详情URL,当前融资轮次,行业,投资方和更新时间。

# -*- coding: utf-8 -*-
"""
Created on Sat Oct 14 15:17:52 2017

@author: ESRI
"""

import requests
import time
from bs4 import BeautifulSoup
import pandas as pd
# 导入pandas库

# 设置列表页面URL的固定部分
url = 'https://bj.lianjia.com/ershoufang/'
BASE_URL_U1 = "http://www.cyzone.cn/event/list-764-0-"
BASE_URL_U2 = "-0-0-0-0/"

# 最好在http请求中设置一个头部信息,否则很容易被封ip
headers = {'User-Agent':'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.11 (KHTML, like Gecko) Chrome/23.0.1271.64 Safari/537.11',
'Accept':'text/html;q=0.9,*/*;q=0.8',
'Accept-Charset':'ISO-8859-1,utf-8;q=0.7,*;q=0.3',
'Accept-Encoding':'gzip',
'Connection':'close',
'Referer':'http://www.baidu.com/link?url=_andhfsjjjKRgEWkj7i9cFmYYGsisrnm2A-TN3XZDQXxvGsM9k9ZZSnikW2Yds4s&wd=&eqid=c3435a7d00146bd600000003582bfd1f'
}

# 循环抓取列表页信息
for i in range(1,31):  # 分页
    if i == 1:
        i=str(1)
        var_url = (BASE_URL_U1 + i + BASE_URL_U2)
        r = requests.get(url=var_url, headers=headers)
        html = r.content
        #print(html)
    else:
        i=str(i)
        var_url=(BASE_URL_U1 + i + BASE_URL_U2)
        var_url=requests.get(url=var_url,headers=headers)
        html2=r.content
        html = html + html2
        # 每次间隔1秒
        time.sleep(1)
        
        # 解析抓取的页面内容
        res = BeautifulSoup(html, 'html.parser')
        # 获取感兴趣目标信息:
        # 提取公司名称
        # table>tbody>tr.table-plate3>td.tp2>span.tp2_tit>a     
        companys = res.find_all('span', 'tp2_tit')
        cnames = []
        print(len(companys))
        for item in companys:
            cname =  item.a.string
            cnames.append(cname)
    
        #print(cnames)
        # 获取感兴趣目标信息:
        # 提取公司详情url
        companys = res.find_all('span', 'tp2_tit')
        urls = []
        for item in companys:
            url =  item.a['href']
            urls.append(url)
        # 获取感兴趣目标信息:
        # 提取当前融资轮次,行业,投资方和更新时间

        # res = BeautifulSoup(html, 'html5lib')
        # finances = res.select('div#main > div.list-table3 > table > tbody > tr')
        finances = res.find_all('tr', 'table-plate3')
        # 融资轮次,行业,投资方,更新时间
        financing_rounds, businesses, investors, update_times  = [],[],[],[]
        #print(len(finances))
        for i in range(0, len(finances)):
            # 获取第一行数据(范围)
            items = finances[i].find_all('td')
            # print(items)
            # 获取融资轮次
            fround =  items[-5].text.strip()
            #获取行业
            business = items[-4].text.strip()
            #获取投资方
            investor = items[-3].text.strip()
            #获取更新时间
            update_time = items[-2].text.strip()
            financing_rounds.append(fround)
            businesses.append(business)
            investors.append(investor)
            update_times.append(update_time)
            
            # 将获取的数据进行汇总:
            #print(len(cnames))
            #print(len(urls))
            #print(len(financing_rounds))
            #print(len(financing_rounds))
            #print(len(businesses))
            #print(len(investors))
            #print(len(update_times))
    
            # 创建数据表
        resultsDatas = pd.DataFrame({'公司名称':cnames,'详情URL':urls,'融资轮次':financing_rounds,'行业':businesses,'投资方':investors,'更新时间':update_times})
            # 查看数据表内容
        print(resultsDatas)
    
    
    结果:

                 公司名称      投资方        更新时间   融资轮次                             行业  \
0   Future Go智晓未来  881万人民币         天使轮    天使轮                           158笔   
1            懒猫社长     生活消费  2017-10-13     A轮                           同方厚持   
2            乐刻运动     医疗健康  2017-10-13     C轮           高瓴资本 华晟资本-华兴资本 IDG资本   
3           WAVE浪     生活消费  2017-10-13    天使轮                      创丰资本 赤子基金   
4            一粒传媒     文体娱乐  2017-10-13    天使轮                         投资方未透露   
5     MIOTECH妙盈科技     金融支付  2017-10-13     A轮     Horizons Ventures维港投资 真格基金   
6      玖富咨询9FBank     金融支付  2017-10-13     B轮                         投资方未透露   
7            娱加娱乐     内容产业  2017-10-13   战略投资                         芒果文创基金   
8            洒哇地咔       硬件  2017-10-13     A轮               奋达科技(泓锦文基金) 水木资本   
9          武汉飞渡教育       教育  2017-10-13   战略投资                           小站教育   
10           作业盒子       教育  2017-10-13    B+轮  贝塔斯曼亚洲投资基金 好未来(学而思) 百度风投 ····   
11      Vingt Ans     电子商务  2017-10-13     A轮                           彬复资本   
12          123GO     生活消费  2017-10-13  Pre-A                        九万资本 吴波   
13  HoloMatic禾多科技     交通出行  2017-10-13    天使轮      IDG资本 四维图新 贝塔斯曼亚洲投资基金····  
。。。。。。。。。。。。。。。。。。。
   

阅读全文
0 0
原创粉丝点击