Code Monkey home page Code Monkey logo

qqbot's People

Contributors

borgle avatar feiyuw avatar femj007 avatar gtt116 avatar jj11hh avatar k3rw1n avatar kairyu avatar lc4t avatar naville avatar ninelucas avatar pandolia avatar staugur avatar supermariosf avatar waylonwang avatar xianwulin avatar xiaobear250 avatar xrdavies avatar yxwzaxns avatar zhongdai avatar zofuthan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

qqbot's Issues

获取群列表时出错

[2016-12-22 11:21:16] [INFO] 获取朋友列表成功,共 399 个朋友
[2016-12-22 11:21:16] [INFO] 登录 Step7 - 获取群列表
[2016-12-22 11:21:16] [INFO] ============================================================
Traceback (most recent call last):
  File "/Users/xyz/.anaconda2/bin/qqbot", line 11, in <module>
    sys.exit(main())
  File "/Users/xyz/.anaconda2/lib/python2.7/site-packages/qqbot/qqbot.py", line 24, in main
    bot.Login()
  File "/Users/xyz/.anaconda2/lib/python2.7/site-packages/qqbot/qqbot.py", line 50, in Login
    self.manualLogin()
  File "/Users/xyz/.anaconda2/lib/python2.7/site-packages/qqbot/qqbot.py", line 62, in manualLogin
    self.fetchGroups()
  File "/Users/xyz/.anaconda2/lib/python2.7/site-packages/qqbot/qqbot.py", line 312, in fetchGroups
    member = self.fetchGroupMember(info['code'])
  File "/Users/xyz/.anaconda2/lib/python2.7/site-packages/qqbot/qqbot.py", line 351, in fetchGroupMember
    minfos = ret['minfo']
KeyError: 'minfo'

使用树莓派运行qqbot时,提示无法弹出二维码图片

环境是raspbian最新版,python2.7.9,找到对应目录,可以看到二维码图片。
[2017-02-16 15:46:12] [INFO] QQBot-v2.0.6
[2017-02-16 15:46:12] [INFO] 配置完成
[2017-02-16 15:46:12] [INFO] 用户名: 无
[2017-02-16 15:46:12] [INFO] 登录方式:手动
[2017-02-16 15:46:12] [INFO] 命令行服务器端口号:8188
[2017-02-16 15:46:12] [INFO] HTTP 服务器 ip :无
[2017-02-16 15:46:12] [INFO] HTTP 服务器端口号:无
[2017-02-16 15:46:12] [INFO] 用于接收二维码的邮箱账号:无
[2017-02-16 15:46:12] [INFO] 邮箱服务授权码:无
[2017-02-16 15:46:12] [INFO] 调试模式:关闭
[2017-02-16 15:46:12] [INFO] 掉线后自动重启:否
[2017-02-16 15:46:12] [INFO] 开始手动登录...
[2017-02-16 15:46:12] [INFO] 登录 Step1 - 获取二维码
[2017-02-16 15:46:12] [WARNING] 无法弹出二维码图片 file:///home/pi/.qqbot-tmp/3f316aa2918e447099f1a3b3e6053fbf.png 。[Errno 2] No such file or directory
[2017-02-16 15:46:15] [INFO] 登录 Step2 - 等待二维码扫描及授权
[2017-02-16 15:46:19] [INFO] 登录 Step2 - 等待二维码扫描及授权

谢谢!

身份过期,号码存在风险问题

长期登录时,如果超过了1、2天,总会出现身份过期错误的问题。而且再次登录时会被认为存在风险,需要手动重置密码恢复,这个怎么解决?这个是个很影响使用的问题!!

你好,初次运行出了问题,centos7

[2016-11-12 08:35:23,535] [QQBot-v1.8.2 INFO] 登录 Step8 - 获取讨论组列表
Traceback (most recent call last):
File "/usr/bin/qqbot", line 9, in
load_entry_point('qqbot==1.8.2', 'console_scripts', 'qqbot')()
File "/usr/lib/python2.7/site-packages/qqbot.py", line 567, in main
bot.Login()
File "/usr/lib/python2.7/site-packages/qqbot.py", line 71, in Login
self.manualLogin()
File "/usr/lib/python2.7/site-packages/qqbot.py", line 94, in manualLogin
self.fetchDiscusses()
File "/usr/lib/python2.7/site-packages/qqbot.py", line 298, in fetchDiscusses
for info in result['dnamelist']:
KeyError: 'dnamelist'

[CRITICAL] 获取二维码扫描状态时出错

之前几天没问题,今天中午发现出现这个问题。在 DigitalOcean sfo 与 Aliyun 的 CentOS 系统下测试均出现相同错误。

[WARNING] 无法弹出二维码图片 file:///home/xxxx/.qqbot-tmp/9457104e8d42496185e7c70fad7ddcae.png 。[Errno 2] No such file or directory
/usr/lib/python2.7/site-packages/requests/packages/urllib3/connectionpool.py:821: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.org/en/latest/security.html
  InsecureRequestWarning)
[2017-02-09 16:20:55] [CRITICAL] 获取二维码扫描状态时出错, html="<html>
<head><title>403 Forbidden</title></head>
<body bgcolor="white">
<center><h1>403 Forbidden</h1></center>
<hr><center>Tencent Login Server</center>
</body>
</html>
"

2.0 版和 1.x 版的差别

本次 2.0.1 版对本项目进行了大的重构,相对于之前的 1.x 版功能进行加强,代码改动量非常大,很多接口都不再兼容了。主要的差别有:

(1) QQBot 类拆分
1.x 版中 QQBot 类太庞大了,登录数据和联系人数据和全搅在一起,管理非常不便。联系人的查询接口只有 getBuddyByUin 之类的,功能简单,且十分难记。

本次将原来的 QQBot 类的功能拆分为 QSession 类和 QContacts 类,前者管理登录数据,只负责和腾讯服务器通讯,后者管理联系人数据,只负责联系人的保存和查询。

新的 QQBot 类对 QSession 对象和 QContacts 对象进行统一管理,只提供 List/Get/SendTo/Send/On 五个接口,使用更方便,联系人查询功能更强大,可根据 QQ号、uin 和网名进行查询。

(2) 程序的运行方式
程序目前采用 消息/响应 的方式运行,后台开启三个子线程,分别运行 pollForever 、 fetchForever 和 termServer.Run ,分别负责 QQ消息轮询 、 联系人资料获取 和 qterm 客户端消息监听,子线程收到消息或完成联系人资料获取时,会向主线程发消息(实际是将一个 Message 对象放入一个消息队列中去)。主线程不停的从消息队列中取出消息,并根据消息类型调用相应的回调函数。所有对联系人资料的查询和更新等操作均在主线程中完成,避免了多个线程对同一个数据进行操作。

(3) 其他
qq 和 uin 均已字符串的形式保存(之前是 int )。
少量通用函数的名称进行了改变。

如果使用过程中还有其他问题,请发邮件给我([email protected])。

消息发送不成功

有时候,消息发送的时候显示发送成功,然而并没有发送成功!

ImportError: cannot import name 'QQBot'

我在ubuntu 16.04的服务器上运行,服务器里面同时又python3 和python2.7,安装了qqbot以后,启动时好像默认用python3打开了,所以才会error,这个怎么解决呢。

关于定时任务

楼主你好~

python小白一枚
想问一下 如果我想让机器人每天定时发送消息到某个群
这个时间控制我应该加到哪里呢?

找到了一个就是循环查询登录状态的那里 不知道对不对 好像也没成功 T-T

一直提示 Unverified HTTPS

中间两句一直提示

# [INFO] 来自 ...
# /usr/lib/python2.7/site-packages/requests-2.12.5-py2.7.egg/requests/packages/urllib3/connectionpool.py:843: InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised. See: https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
# InsecureRequestWarning)
# [INFO] 来自 ...

请教一下关于参数的获取

您好,我现在遇见了一个问题,自己写了一个,在扫码登录之后,获取 接口返回登录成功,也就是跟您的 getAuthStatus() 类似。之后也能根据 cookies 获取 ptwebqq, 但是去获取 vfwebqq 时,返回的是 {"retcode":100000},而不是预想的那样。想问一下,你有没有遇见过这种情况?
THX!

运行时出现错误

Traceback (most recent call last):
File "C:\Python27\lib\logging__init__.py", line 876, in emit
stream.write(fs % msg.encode("UTF-8"))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position 44: ordinal
not in range(128)
Logged from file qqbot.py, line 290

运行一段时间后掉线检测不到

运行一段时间之后,没有打印任何任何日志,其他qq看到这个qqbot是离线的
但是qqbot检测不到自己已经离线了。qqbot是否有定时检测自己是否正常在线?
鹅厂会强制webqq定时踢下线吗?

关于群名和好友备注(昵称)

[2016-12-04 16:21:57] [INFO] 来自 group1170385109(buddy32732725738) 的消息: "xxxx"

[2016-12-04 16:11:26] [INFO] 来自 buddy82460455567 的消息: "xxxx"

能否将消息列表改成

[2016-12-04 16:21:57] [INFO] 来自 [群名]([昵称] or [备注]) 的消息: "xxxx"

[2016-12-04 16:11:26] [INFO] 来自 [昵称] or [备注] 的消息: "xxxx"

这样的形式呢?

登录成功获取列表之后,请求错误。

[2016-12-13 12:09:31] [CRITICAL] 第5次请求“https://d1.web2.qq.com/channel/poll2”时出现“网络错误或url地址错误”,终止 QQBot

换机器试了下一样的情况。

我注意过这里的代码。
# 若 retcode 有误,一般连续 3 次都出错就没必要再试了 (j <= 2) if i <= 4 and j <= repeatOnDeny: DEBUG('第%d次请求“%s”时出现“%s”, html:\n%s', i+j, url, errorInfo, html)
上个版本是6。也会报相同的错误。第7次请求xxxxxx 然后终止。是协议的问题吗=。=

运行几个小时后qq收不到bot发送的消息

日志如下,bot成功接收到了群成员消息并回复成功,但官方客户端qq群看不到该消息。
[2016-11-13 01:55:04,679] [QQBot-v1.8.2 INFO] 来自 group3417988455(buddy4254360028) 的消息: "@asch小妹 delegate zhenxi"
['zhenxi', 53, 98.85, 10426, '12 minutes ago']
[2016-11-13 01:55:11,960] [QQBot-v1.8.2 WARNING]
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/qqbot.py", line 407, in smartRequest
result = json.loads(html)
File "/usr/lib/python2.7/json/init.py", line 338, in loads
return _default_decoder.decode(s)
File "/usr/lib/python2.7/json/decoder.py", line 366, in decode
obj, end = self.raw_decode(s, idx=_w(s, 0).end())
File "/usr/lib/python2.7/json/decoder.py", line 384, in raw_decode
raise ValueError("No JSON object could be decoded")
ValueError: No JSON object could be decoded
[2016-11-13 01:55:11,961] [QQBot-v1.8.2 WARNING] 第1次请求“http://d1.web2.qq.com/channel/send_qun_msg2”时出现“网络错误或url地址错误”,html=

<title>502 Bad Gateway</title>

502 Bad Gateway


nginx !等待 3 秒后重新请求一次。 [2016-11-13 01:55:15,113] [QQBot-v1.8.2 INFO] 向 group3417988455 发送消息成功

^C^C^C^C[2016-11-13 01:57:32,485] [QQBot-v1.8.2 INFO] QQBot正常退出

QQBOT 异常停止

如题:

[2017-01-17 23:18:51] [INFO] QQBOT 异常停止
[2017-01-17 23:18:51] [INFO] 重新启动 QQBot
[2017-01-17 23:18:51] [INFO] QQBot-v2.0.2
[2017-01-17 23:18:51] [INFO] 配置完成
[2017-01-17 23:18:51] [INFO] 用户名: 无
[2017-01-17 23:18:51] [INFO] 登录方式:自动(qq=123456789)
[2017-01-17 23:18:51] [INFO] 命令行服务器端口号:8188
[2017-01-17 23:18:51] [INFO] HTTP 服务器 ip :123.123.123.123
[2017-01-17 23:18:51] [INFO] HTTP 服务器端口号:8189
[2017-01-17 23:18:51] [INFO] 用于接收二维码的邮箱账号:[email protected]
[2017-01-17 23:18:51] [INFO] 邮箱服务授权码:******
[2017-01-17 23:18:51] [INFO] 调试模式:关闭
[2017-01-17 23:18:51] [INFO] 掉线后自动重启:是
[2017-01-17 23:18:51] [INFO] 开始自动登录...
[2017-01-17 23:18:51] [INFO] 成功从文件 "/root/.qqbot-tmp/v2.0-123456789.pickle" 中恢复登录信息和联系人
[2017-01-17 23:18:51] [INFO] 登录成功。登录账号:Aurore(123456789)
[2017-01-17 23:18:51] [INFO] 已在后台运行 fetchForever 方法,每隔 5 分钟获取一次联系人资料
[2017-01-17 23:18:51] [INFO] 已在 8188 端口开启 QQBot-Term 服务器
[2017-01-17 23:18:51] [WARNING] 无法自动打开新控制台运行 QTerm 客户端,请手动打开新控制台并运行 qterm 8188 命令
[2017-01-17 23:18:55] [CRITICAL] 第5次请求“https://d1.web2.qq.com/channel/poll2”时出现“网络错误 hostname 'd1.web2.qq.com' doesn't match either of 'weiyun.com', '*.weiyun.com'”,终止 QQBot

最近是鹅厂在封号吗?

qqbot(ver:1.8.7)正常运行几分钟后,发现会请求baidu的url,然后再也接收不到消息了~

[2016-11-23 22:13:14] [INFO] 向 buddy3390677501 发送消息成功
14.116.17.158 - - [23/Nov/2016 22:57:54] "GET http://www.baidu.com/s?wd=5118 HTTP/1.1" 404 -
120.132.49.91 - - [23/Nov/2016 23:23:20] "GET http://www.baidu.com/favicon.ico HTTP/1.1" 404 -
5.178.86.75 - - [23/Nov/2016 23:38:56] "CONNECT check.best-proxies.ru:80 HTTP/1.1" 404 -
183.129.160.229 - - [24/Nov/2016 00:01:51] "GET / HTTP/1.1" 404 -
183.129.160.229 - - [24/Nov/2016 00:01:51] code 400, message Bad request syntax ('test')
183.129.160.229 - - [24/Nov/2016 00:01:51] "test" 400 -
139.162.81.62 - - [24/Nov/2016 02:31:24] "GET http://clientapi.ipip.net/echo.php?info=1234567890 HTTP/1.1" 404 -
5.178.86.74 - - [24/Nov/2016 04:04:39] "CONNECT check.best-proxies.ru:80 HTTP/1.1" 404 -
185.49.14.190 - - [24/Nov/2016 05:00:57] "GET http://testp1.piwo.pila.pl/testproxy.php HTTP/1.1" 404 -
139.162.81.62 - - [24/Nov/2016 05:53:57] "GET http://clientapi.ipip.net/echo.php?info=1234567890 HTTP/1.1" 404 -
123.151.42.61 - - [24/Nov/2016 06:30:18] "GET http://www.baidu.com/ HTTP/1.1" 404 -
5.178.86.74 - - [24/Nov/2016 08:43:56] "CONNECT check.best-proxies.ru:80 HTTP/1.1" 404 -

登录成功后读取好友和群列表中id有缓存

比如手机QQ登录,加载好友列表:A{uin:1111,name:好友A}B{uin:2222,name:好友B}
但是程序放到云服务上,服务器跟手机网络不在同一地方,启动时加载的可能就会是
A{uin:3333,name:好友A}B{uin:4444,name:好友B}

如果要给某好友发送消息,根据名称找到的uin是3333、4444发消息发不到实际的QQ号,服务器上的重登陆都不会刷新uin,一直都是3333、4444,此时如果指定给uin1111发消息,好友A可以正常收到消息,而3333却不行。

请问该项目是否有该情况,谢谢!

无法正常登陆

登录完毕后自动获取好友的阶段,会报错
myqqbot = MyQQBot()
myqqbot.Login()

[2017-01-02 14:29:45] [CRITICAL] 第9次请求“http://s.web2.qq.com/api/get_friend_uin2?tuin=3986980927&type=1&vfwebqq=e7a87df220aa820b9665e9f48131c4eead54d3f070ef11cabb7449e5c0a9953b75877841276051b8&t=0.21578024993083011”时出现“超时”,终止 QQBot
[2017-01-02 14:29:45] [CRITICAL] 手动登录失败!
An exception has occurred, use %tb to see the full traceback.

详细堆栈如下

---------------------------------------------------------------------------
SystemExit                                Traceback (most recent call last)
<ipython-input-5-d5839ba10bb8> in <module>()
----> 1 bot.Login()

/Users/killerhack/.pyenv/versions/anaconda2-4.1.1/lib/python2.7/site-packages/qqbot/qqbot.pyc in Login(self)
     55         INFO(self.conf.qq and '开始自动登录...' or '开始手动登录...')
     56         if not self.conf.qq or not self.autoLogin():
---> 57             self.manualLogin()
     58         INFO('登录成功。登录账号:%s (%d)', self.nick, self.qqNum)
     59 

/Users/killerhack/.pyenv/versions/anaconda2-4.1.1/lib/python2.7/site-packages/qqbot/qqbot.pyc in manualLogin(self)
     72         except RequestError:
     73             CRITICAL('手动登录失败!')
---> 74             sys.exit(1)
     75 
     76     def autoLogin(self):

SystemExit: 1

反复尝试都是这个问题,而且是获取好友到一半的时候会发生这个问题,并非网络问题

发送表情功能

文档中没有发现发送表情功能的相关描述,看了看源码,抓了一下包,想和作者讨论一下。

群里有人发 /抠鼻 (请自信脑补抠鼻表情0.0)表情时,日志是
[face98]

在网页的smartqq发送 /抠鼻123 ,抓包如下:
{"to":11111111,"content":"[["face",98]," 123",["font",{"name":"宋体","size":10,"style":[0,0,0],"color":"000000"}]]","face":0,
后面省略一些东西。

可以看到,表情是 ["face",98] 形式,查看源码后,将 msg=["face",98] 填入send中,成功发送表情。

但是如果要发送表情加上文字感觉就比较麻烦了,字典中"content"是一个list,末位是font的list,前面都是发送的内容,而按照目前源码中的实现的话,如何实现表情和文字的同时发送?
如果修改源码肯定可以实现这个功能,不过没有想到比较优雅的向后兼容的实现方式。

发消息的retcode为100100,貌似也发送成功了

如题

1|qqbot_fo | [2017-01-17 02:46:22] [WARNING] 第1次请求“http://d1.web2.qq.com/channel/send_qun_msg2”时出现“请求被拒绝错误”,html='{"errmsg":"error!!!","retcode":100100}\n'
1|qqbot_fo |     停止再次请求!!!
1|qqbot_fo | [2017-01-17 02:46:22] [ERROR] 向 QQ 服务器请求数据时出错

其实此时消息发送是成功的。
if retcode in (0, 1202, 100003, 100100): 发送1次
if retcode in (0, 1202, 100003): 发送3次

Docker 环境下运行出错

如下执行情况:

root@Aurore:~# docker run -it --rm -p 8189:8189 ubuntu:trusty /bin/bash
root@b6142e3bc84c:/# apt-get update
root@b6142e3bc84c:/# apt-get install -y python python-setuptools
root@b6142e3bc84c:/# easy_install pip
root@b6142e3bc84c:/# pip install qqbot
root@b6142e3bc84c:/# pip install flask
root@b6142e3bc84c:/# qqbot -q 123456789 -p 8188 -ip 0.0.0.0 -hp 8189 -r -d
[2017-01-17 04:07:11] [INFO] QQBot-v2.0.2
Traceback (most recent call last):
  File "/usr/lib/python2.7/logging/__init__.py", line 872, in emit
    stream.write(fs % msg)
  File "/usr/local/lib/python2.7/dist-packages/qqbot/utf8logger.py", line 11, in <l
ambda>
    lambda s: writer.write(s.decode(coding).encode(wcoding, 'igonre'))
LookupError: unknown error handler name 'igonre'
Logged from file qconf.py, line 183
Traceback (most recent call last):
  File "/usr/lib/python2.7/logging/__init__.py", line 872, in emit
    stream.write(fs % msg)
  File "/usr/local/lib/python2.7/dist-packages/qqbot/utf8logger.py", line 11, in <l
ambda>
    lambda s: writer.write(s.decode(coding).encode(wcoding, 'igonre'))
LookupError: unknown error handler name 'igonre'
Logged from file qconf.py, line 184

root@06ccae6fa6c5:/# nohup qqbot -q 123456789 -p 8188 -ip 0.0.0.0 -hp 8189 -r -d > qqbot.log 2>&1 &
root@06ccae6fa6c5:/# tail qqbot.log
[2017-01-17 04:12:55] [INFO] QQBot-v2.0.2
[2017-01-17 04:12:55] [INFO] 配置完成
[2017-01-17 04:12:55] [INFO] 用户名: 无
[2017-01-17 04:12:55] [INFO] 登录方式:自动(qq=123456789)
[2017-01-17 04:12:55] [INFO] 命令行服务器端口号:8188
[2017-01-17 04:12:55] [INFO] HTTP 服务器 ip :0.0.0.0
[2017-01-17 04:12:55] [INFO] HTTP 服务器端口号:8189
[2017-01-17 04:12:55] [INFO] 用于接收二维码的邮箱账号:无
[2017-01-17 04:12:55] [INFO] 邮箱服务授权码:无
[2017-01-17 04:12:55] [INFO] 调试模式:开启
[2017-01-17 04:12:55] [INFO] 掉线后自动重启:是
[2017-01-17 04:12:55] [INFO] 开始自动登录...

root@b6142e3bc84c:/# exit

直接通过命令行运行 qqbot 全是报错,而输出重定向却可以看到正确输出?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.