python使用心得之获得github代码库列表
2014-06-26 16:02
567 查看
1.背景效果可以看下具体51搜索展示http://www.51bt.cc,结合Xunsearch全文检索技术,可以达到毫秒级的数据搜索
项目需求,要求获得github的repo的api,以便可以提取repo的数据进行分析。研究了一天,终于解决了这个问题,虽然效率还是比较低下。
因为github的那个显示repo的api,列出了每个repo的详细信息,而且是json格式的。现在貌似还没有找到可以分析多个json格式数据的方法,所以用的是比较蠢得splite加re的方法。如果大家有更好的方法,不发留言讨论!
2.代码
import re
import os
def GetUrl(num):
str = os.popen("curl -G https://api.github.com/repositories?since=%d"%(num)).read()
pattern = '"url"'
pattern1='repos'
urls=str.split(',\n')
for i in urls:
if pattern in i and pattern1 in i:
# text1=i.splite(':')
text=re.compile('"(.*?)"').findall(i)[1]
print text
if __name__=='__main__':
GetUrl(1000) 其中num的值指的是页面的id,我们可以做一个循环,不断增大num的值,就可以无限提取repo。因为github的api对于流量是有限制的,所以这么做是一个可行的方法。
项目需求,要求获得github的repo的api,以便可以提取repo的数据进行分析。研究了一天,终于解决了这个问题,虽然效率还是比较低下。
因为github的那个显示repo的api,列出了每个repo的详细信息,而且是json格式的。现在貌似还没有找到可以分析多个json格式数据的方法,所以用的是比较蠢得splite加re的方法。如果大家有更好的方法,不发留言讨论!
2.代码
import re
import os
def GetUrl(num):
str = os.popen("curl -G https://api.github.com/repositories?since=%d"%(num)).read()
pattern = '"url"'
pattern1='repos'
urls=str.split(',\n')
for i in urls:
if pattern in i and pattern1 in i:
# text1=i.splite(':')
text=re.compile('"(.*?)"').findall(i)[1]
print text
if __name__=='__main__':
GetUrl(1000) 其中num的值指的是页面的id,我们可以做一个循环,不断增大num的值,就可以无限提取repo。因为github的api对于流量是有限制的,所以这么做是一个可行的方法。
相关文章推荐
- python使用心得之获得github代码库列表
- python使用心得之获得github代码库列表
- python 获得github代码库列表
- [zz]通过win32扩展接口使用 Python获得系统进程列表的方法
- Python使用Ckan API获得CKAN的group列表
- python 弄github代码库列表
- git+github个人使用心得总结(持续更新)
- 使用Python找出本机支持的socket列表
- 演示如何使用WMI获得本地机器的进程列表
- Python 使用列表作为函数默认值且为空
- 使用python的列表解析以及函数式计算来简化代码
- Python列表和字典参数使用
- 使用Python找出本机支持的socket列表
- 使用Python模拟登录QQ邮箱获取QQ好友列表
- 使用Gtreamer获得摄像头数据并显示(Webcam streaming using Python--pyGTK, wxPython and Gstreamer)
- python使用心得
- 在vb中使用Iphlpapi.dll获取网络信息 第二章 第十二节 获得本机系统网络接口适配器的列表
- 使用Swig封装C++到Python的心得--01
- 使用python在win下通过IE组件获得Ajax执行后网页源代码