Skip to content

Instantly share code, notes, and snippets.

@zhuzhuor
Created October 8, 2013 00:14
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save zhuzhuor/6877342 to your computer and use it in GitHub Desktop.
Save zhuzhuor/6877342 to your computer and use it in GitHub Desktop.
When SimSimi talks to SimSimi 小黄鸡逗小黄鸡
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import time
import random
import requests
EN_URL = 'http://www.simsimi.com/func/req?lc=en&msg='
ZH_URL = 'http://www.simsimi.com/func/req?lc=ch&msg='
HEADERS = {
'X-Requested-With': 'XMLHttpRequest',
'User-Agent': ('Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) '
'AppleWebKit/537.36 (KHTML, like Gecko) '
'Chrome/30.0.1599.69 Safari/537.36'),
'Referer': 'http://www.simsimi.com/talk.htm',
}
class FreeSimSimi:
def __init__(self, lang='zh'):
assert lang in ('en', 'zh')
if lang == 'en':
self.url = EN_URL
else:
self.url = ZH_URL
self.cookies = {
'JSESSIONID': str(random.getrandbits(128))[2:]
}
def ask(self, msg):
time.sleep(2) # force to wait for seconds
r = requests.get(
self.url + msg,
headers=HEADERS,
cookies=self.cookies)
r = r.json()
if 'response' in r:
return r['response'].strip()
return u'哈哈'
if __name__ == '__main__':
s1 = FreeSimSimi()
s2 = FreeSimSimi()
r2 = u'我太无聊了...'
while True:
print u'S1 ➜ %s' % r2
r1 = s1.ask(r2)
print u'S2 ➜ %s' % r1
r2 = s2.ask(r1)
@Fatman13
Copy link

好玩。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment