Y's note

Web技術・プロダクトマネジメント・そして経営について

本ブログの更新を停止しており、今後は下記Noteに記載していきます。
https://note.com/yutakikuchi/

業種別企業の平均年齢と年収の辞書データを公開しました

平均年齢と年収の辞書データ

企業別の平均年齢と年収のデータをネットで探していたのですが、リストとしてまとまっているものが無かったので作成しました。以前作成した業種別企業名辞書の企業コードを基にYahoo!ファイナンスから平均年齢と年収のデータを引き当てます。当然ですが、Yahoo!ファイナンス様のサーバ負荷が高まらないように引当時にはsleepを入れるという優しさを忘れてはイケません。
※下で公開しているデータの利用は全て自己責任でお願い致します。


業種別企業名辞書データを公開しました - Yuta.Kikuchiの日記 はてなブックマーク - 業種別企業名辞書データを公開しました - Yuta.Kikuchiの日記
Yahoo!ファイナンス - 株価やニュース、企業情報などを配信する投資・マネーの総合サイト はてなブックマーク - Yahoo!ファイナンス - 株価やニュース、企業情報などを配信する投資・マネーの総合サイト

平均年齢と年収データ

DataFormat
[業種名]
企業Code \t 上場市場 \t 企業名 \t 平均年齢 \t 平均年収
Github

全データは以下のURLにまとめてあります。
Data/corps_age_income.txt at master · yutakikuchi/Data · GitHub はてなブックマーク - Data/corps_age_income.txt at master · yutakikuchi/Data · GitHub

SampleData
4344    東証1部 ソースネクスト(株)  33.7歳  6,050千円
4674    東証1部 (株)クレスコ    34.5歳  5,490千円
4676    東証1部 (株)フジ・メディア・ホールディングス    44.3歳  15,100千円
4684    東証1部 (株)オービック  34.3歳  7,380千円
4687    東証1部 TDCソフトウェアエンジニアリング  34.9歳  5,790千円
4689    東証1部 ヤフー(株)  34.0歳  6,210千円
4704    東証1部 トレンドマイクロ(株)    36.8歳  7,060千円
4716    東証1部 日本オラクル(株)    38.7歳  9,650千円
4719    東証1部 (株)アルファシステムズ  34.0歳  5,430千円
4722    東証1部 フューチャーアーキテクト(株)    34.2歳  -千円
4725    東証1部 (株)シーエーシー    40.0歳  6,340千円
4726    東証1部 ソフトバンク・テクノロジー(株)  34.7歳  6,170千円
4728    東証1部 (株)トーセ  31.0歳  4,540千円
4733    東証1部 (株)オービックビジネスコンサルタント    31.3歳  5,530千円
4739    東証1部 伊藤忠テクノソリューションズ(株)    37.7歳  7,160千円
4743    東証1部 (株)アイティフォー  39.0歳  6,140千円
4746    東証1部 (株)東計電算    35.4歳  5,060千円
4762    東証1部 (株)エックスネット  34.1歳  7,770千円
4768    東証1部 (株)大塚商会    38.9歳  7,800千円
4770    マザーズ    図研エルミック(株)  39.3歳  5,940千円
4776    東証1部 サイボウズ(株)  32.8歳  5,170千円
4779    東証1部 ソフトブレーン(株)  ‐歳 -千円
4799    東証1部 (株)アグレックス    34.8歳  5,200千円
4812    東証1部 ISID    38.2歳  8,320千円
4813    マザーズ    (株)ACCESS    35.9歳  6,550千円
4820    東証1部 (株)EMシステムズ  34.8歳  4,980千円
4824    マザーズ    (株)メディアシーク  32.7歳  4,290千円
4825    東証1部 (株)ウェザーニューズ    36.1歳  5,710千円
4826    東証1部 (株)CIJ  36.4歳  5,160千円
4829    東証2部 日本エンタープライズ(株)    35.2歳  5,590千円
4832    東証2部 JFEシステムズ(株)    42.6歳  6,610千円
4839    東証1部 (株)WOWOW  41.2歳  10,010千円
6791    東証1部 日本コロムビア(株)  41.4歳  6,770千円
6879    東証2部 (株)イマジカ・ロボット ホールディングス    40.4歳  7,720千円
7518    東証1部 ネットワンシステムズ(株)    36.2歳  7,490千円
7595    東証1部 (株)アルゴグラフィックス    38.3歳  5,890千円
7844    東証1部 (株)マーベラスAQL    33.5歳  5,190千円
7860    東証1部 エイベックス・グループHD(株)  37.4歳  7,890千円

ScrapeCode

Data/corps.txt at master · yutakikuchi/Data · GitHub はてなブックマーク - Data/corps.txt at master · yutakikuchi/Data · GitHub
下のコードではcorps.txtという業種別辞書データを利用しています。

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys,re,urllib,urllib2,time
baseuri = "http://stocks.finance.yahoo.co.jp/stocks/profile/"
f = open( './corps_age_income.txt', 'w' )
opener = urllib2.build_opener()
ua = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_6_8) AppleWebKit/534.51.22 (KHTML, like Gecko) Version/5.1.1 Safari/    534.51.22'
referer = 'http://finance.yahoo.co.jp/'
opener.addheaders = [( 'User-Agent', ua ),( 'Referer', referer )]
for line in open( './corps.txt', 'r' ):
   if re.compile( r'\[.*?\]', re.M ).search( line ) is not None or line == "\n":
      f.write( line )
      continue
   nodes = line.split( '\t' )
   info = nodes[0] + "\t" + nodes[1] + "\t" + nodes[2]
   url = baseuri + "?code=" + nodes[0] + ".T"
   try: 
      content = opener.open( url ).read()
      if re.compile( r'<th nowrap>平均年齢</th>(.|\n)*?<th nowrap>平均年収</th>', re.M ).search( content ) is not None:
         age = re.compile( r'<th nowrap>平均年齢</th>(.|\n)*?<td>(.*?)</td>', re.M ).search( content ).group(2)
         income = re.compile( r'<th nowrap>平均年収</th>(.|\n)*?<td>(.*?)</td>', re.M ).search( content ).group(2)
         info = info + "\t" + age + "\t" + income 
      f.write( info + "\n" )
      time.sleep(0.2)
   except Exception:
      continue
f.close()

初めてのPython 第3版

初めてのPython 第3版