GitHub Profile
Разбирайте страницу профиля пользователя или организации GitHub в структурированный JSON с именем, био, подписчиками, подписками, публичными репозиториями, закреплёнными репозиториями и организациями.
Использование API
Добавьте &scraper=github-profile к запросу Crawling API. URL-кодируйте целевой URL в параметре url.
curl 'https://api.crawlbase.com/?token=YOUR_TOKEN' \
--data-urlencode 'url=https://github.com/karpathy' \
--data-urlencode 'scraper=github-profile' -Gfrom crawlbase import CrawlingAPI
api = CrawlingAPI({'token': 'YOUR_TOKEN'})
res = api.get(
'https://github.com/karpathy',
{'scraper': 'github-profile'}
)
import json
data = json.loads(res['body'])const { CrawlingAPI } = require('crawlbase');
const api = new CrawlingAPI({ token: 'YOUR_TOKEN' });
const res = await api.get(
'https://github.com/karpathy',
{ scraper: 'github-profile' }
);
const data = JSON.parse(res.body);require 'crawlbase'
api = Crawlbase::API.new(token: 'YOUR_TOKEN')
res = api.get('https://github.com/karpathy', scraper: 'github-profile')
data = JSON.parse(res.body)Пример входного URL
URL, передаваемый в параметре url (URL-декодированный для удобства чтения):
https://github.com/karpathyСтруктура ответа
Тело ответа в формате JSON. Типы полей могут быть null, если исходная страница не содержит значения.
Отображаемое имя.
Логин аккаунта (слаг профиля).
Био профиля.
Канонический URL профиля.
Количество подписчиков.
Количество подписок.
Количество публичных репозиториев, показанное на вкладке Repositories.
Названия закреплённых репозиториев.
Логины организаций, показанных в профиле.
Пример ответа
{
"name": "Andrej",
"username": "karpathy",
"bio": "I like to train Deep Neural Nets on large datasets.",
"url": "https://github.com/karpathy",
"followers": 210000,
"following": 8,
"publicRepos": 63,
"pinnedRepos": ["nanoGPT", "nanochat", "llm.c", "llama2.c", "micrograd", "microgpt"],
"organizations": []
}