LoginSignup
131
134

More than 1 year has passed since last update.

語彙力診断の点数分布

Last updated at Posted at 2016-08-18

語彙力診断


2016818

 #

50/4

goiryoku.png
Twitter#"0.43%"





Twitter API使

Python  Twitter  (Twitter API )




if point <= 36600
36600
goiryoku.py
from requests_oauthlib import OAuth1Session
import json
import re
import matplotlib.pyplot as plt

keysfile = open('keys.json')
keys = json.load(keysfile)

def main():
    maxid = None
    pointarray = []
    pattern = '【[0-9]+】'
    counter = 0
    for i in range(0,100):
        tweets = tweet_search('#私の語彙力は', keys,maxid)
        if tweets == None or len(tweets['statuses']) == 0:
            return pointarray
        for tweet in tweets['statuses']:
            text = tweet['text']
            maxid = tweet['id']
            m = re.search(pattern, text)
            if m!=None:
                point = m.group(0)
                point = int(point[1:-1])
                if point <= 36600 and point >= 0:
                    pointarray.append(int(point))
            counter+=1
            if counter%1000 == 0:
                print('counter={0}'.format(counter))
    
    return pointarray

def create_oath_session(oath_key_dict):
    oath = OAuth1Session(
    oath_key_dict['consumer_key'],
    oath_key_dict['consumer_secret'],
    oath_key_dict['access_token'],
    oath_key_dict['access_token_secret']
    )
    return oath

def tweet_search(search_word, oath_key_dict, maxid=None):
    if maxid is not None:
        maxid = int(maxid) - 1
    url = 'https://api.twitter.com/1.1/search/tweets.json?'
    params = {
        'q': search_word,
        'lang': 'ja',
        'result_type': 'recent',
        'count': '100',
        'max_id': maxid
        }
    oath = create_oath_session(oath_key_dict)
    responce = oath.get(url, params = params)
    if responce.status_code != 200:
        print('Error code: %d' %(responce.status_code))
        return None
    tweets = json.loads(responce.text)
    return tweets

if __name__ == '__main__':
    pointarray = main()
    plt.hist(pointarray,bins=100)
    plt.show()

語彙力ヒストグラム




g4.png
3000010000
5000

35000±α







Web
131
134
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up

131
134