1. 可以通过github提供的API获取用户、项目等信息,而不需要爬虫
2. github的API文档地址https://developer.github.com/v3/search/#constructing-a-search-query
含接口条件参数构造、限制条件、接口地址、返回样式等,建议先阅读以下
3. 调用接口前需要先获取github自己的授权token,位置(settings → Developersettings → Personal access tokens → Generate new token)
4. 构造的http请求的header中需要包含上面的token
headers: {
'User-Agent':'Mozilla/5.0',
'Authorization':'token xxxxxxxxxxxxxxxxxx',
'Content-Type':'application/json',
'method':'GET',
'Accept':'application/json'
}
5. python源码示例
import requests
import json
# 获取指定接口的数据
def fetchUrl(url):
'''
功能:访问 url 的网页,获取网页内容并返回
参数:目标网页的 url
返回:目标网页的 html 内容
'''
headers = {
'User-Agent':'Mozilla/5.0',
'Authorization':'token xxxxxxxxxxxxxxxxxxxxxxxxx',
'Content-Type':'application/json',
'method':'GET',
'Accept':'application/json'
}
r = requests.get(url, headers=headers)
r.raise_for_status()
r.encoding = r.apparent_encoding
result = json.loads(r.text) # json字符串转换成字典
return result
if __name__ == '__main__':
'''
主函数:程序入口
'''
conditions = 'q=fullname:Ruan'
query_url = 'https://api.github.com/search/users?' + conditions
fetch_result = fetchUrl(query_url)
print(fetch_result)