読者です 読者をやめる 読者になる 読者になる

ばぐばぐわーるど

Pythonなどなど

Pythonで掲示板に自動で書き込み、ぱっと見人が会話しているように見せる

この前作った掲示板ですが、作って終わりなのは寂しいので、よくある自動書き込みっぽいことをして人が居る風な感じを出してみます。

以下コードの説明
requestsを使う書き込み用の関数とurllib2を使う書き込み用の関数を作りました。たぶん同じ動作だと思います。書き込む内容はname_listに入ってる名前とhonbun_listに入ってる内容をランダムに取り出して決めてます。
ランダムに決めた内容を書き込み用の関数に投げ入れ30回繰り返してます。あと一気に書き込むとよくなさそう?なので10秒止めてます。

# coding: utf-8

import urllib
import urllib2
import requests
import random
import time

url = 'http://bgbg.wkeya.com/bbs/bbs.py'
name_list = ['佐藤','鈴木','高橋','田中','伊藤','山本','渡辺','John Smith','名前など無い','ああああ','鳥','イルカ','ぺんぎん','']
honbun_list = ['今日はいい天気ですね','今日は台風ですよ・・・','貴様が憎い!','やれるもんならやってみな','お前はそういうところあるもんな','えっ','いや・・・','別に好かれるためにやってるわけじゃない','もう少しだけ我慢して','でっていう','最高だぜ','忘れた','結構じゃないですか','礼儀ただしい!!','ごめんなさい','礼を言う','懐かしいな(笑)','いやダメだろ','やべえ','財布無くした','まじかよ','あああああああ','どうした','辛い']

# requsetsを使った書き込み (Requests http://jp.python-requests.org)
def kakikomi_requests(name, honbun):
    payload = {"name":name, "text":honbun, "submit":"書き込む"}
    requests.post(url, data=payload)
    print name.decode('utf-8'), honbun.decode('utf-8')

# urllib,urllib2を使った書き込み
def kakikomi_urllib2(name, honbun):
    req = urllib2.Request(url)
    payload = urllib.urlencode({"name":name, "text":honbun, "submit":"書き込む"})
    req.add_data(payload)
    urllib2.urlopen(req)
    print name.decode('utf-8'), honbun.decode('utf-8')

# 30回書き込み
for i in range(30):
    name_num = random.randint(0, len(name_list)-1)
    honbun_num = random.randint(0, len(honbun_list)-1)
    kakikomi_requests(name_list[name_num], honbun_list[honbun_num])
    #kakikomi_urllib2(name_list[name_num], honbun_list[honbun_num])
    time.sleep(10) #10秒停止

以下実行結果(一部)

22 名前:高橋 2013年10月2日23時23分23秒
今日は台風ですよ・・・ 

23 名前:田中 2013年10月2日23時23分33秒
どうした 

24 名前:山本 2013年10月2日23時23分44秒
貴様が憎い! 

25 名前:佐藤 2013年10月2日23時23分54秒
もう少しだけ我慢して 

26 名前:田中 2013年10月2日23時24分5秒
結構じゃないですか 

27 名前:鳥 2013年10月2日23時24分16秒
今日は台風ですよ・・・ 

28 名前:ぺんぎん 2013年10月2日23時24分26秒
やれるもんならやってみな 

29 名前:イルカ 2013年10月2日23時24分37秒
辛い 

どう見ても会話が不自然ですが、まあそれは置いときましょう。