Ben 6f26b448a2 add a web scraping APIs and improve data formatting | 1 ano atrás | |
---|---|---|
.gitignore | 1 ano atrás | |
README.md | 1 ano atrás | |
config.json | 1 ano atrás | |
paper2000.json | 1 ano atrás | |
paper_spider.papers_data.json | 1 ano atrás | |
requestments.txt | 1 ano atrás | |
spider.py | 1 ano atrás |
1、读取配置文件中的数据库参数;
2、连接数据库,并创建 papers 集合;
3、实现 /add_paper 端点,用于添加样本数据;
4、实现 /crawl_data 端点,用于爬取数据;
5、实现 worker 函数,用于处理爬取任务。
/graph/v1/paper/{paper_id}
/graph/v1/paper/{paper_id}/citations
/graph/v1/paper/{paper_id}/references
# https://api.semanticscholar.org/api-docs/#tag/Paper-Data/operation/post_graph_get_papers
例子:
curl --location 'https://api.semanticscholar.org/graph/v1/paper/61822dc4ea365e1499fbdae7958aa317ad78f39f?fields=title%2CpaperId%2CreferenceCount&limit=100&offset=' \
--header 'x-api-key: B4YUQrO6w07Zyx9LN8V3p5Lg0WrrGDK520fWJfYD'
相关论文 related-papers
:
curl --location 'https://www.semanticscholar.org/api/1/paper/61822dc4ea365e1499fbdae7958aa317ad78f39f/related-papers?limit=15&recommenderType=relatedPapers' \
--header 'Cookie: tid=rBIABmR91dK7TwAJJIRdAg=='
{
"_id": {
"$oid": "64796d23c0a763eba149940a"
},
"paper_id":3658586,
"year": "年份",
"title": "文章标题",
"slug": "标语",
"tldr": "概述",
"numCiting": "被参考次数",
"numCitedBy": "被引用次数",
"bages": "",
"authors": "作者",
"corpusid": 96048797,
"url": "...",
"citations": [],
"references": [],
"relaterPapers": [],
}
requirements.txt
requests
pymongo
add_paper
python3 spider.py add_paper --path paper2000.json
crawl_data
python spider.py crawl_data