BlankerL / DXY-COVID-19-Crawler

2019新型冠状病毒疫情实时爬虫及API | COVID-19/2019-nCoV Realtime Infection Crawler and API
https://lab.isaaclin.cn/nCoV/
MIT License
1.99k stars 400 forks source link

你好 请问一下 你是怎么找到丁香医生的api的? #14

Closed mrchenxxx closed 4 years ago

BlankerL commented 4 years ago

这就是很基础的爬虫而已,requests获取网页信息,BeautifulSoup解析网页就好。

有兴趣的话可以参考这个代码块。

mrchenxxx commented 4 years ago

https://service-f9fjwngp-1252021671.bj.apigw.tencentcs.com/release/pneumonia 你好,这是另一个github上面丁香医生的api 我不知道他是怎么获取到的,你看一下,如果在这个基础上开发 代码会更简单,如果你知道他是怎么获取到这个api的请告诉我

BlankerL commented 4 years ago

https://service-f9fjwngp-1252021671.bj.apigw.tencentcs.com/release/pneumonia 你好,这是另一个github上面丁香医生的api 我不知道他是怎么获取到的,你看一下,如果在这个基础上开发 代码会更简单,如果你知道他是怎么获取到这个api的请告诉我

请问这是哪个项目使用的API? 这个数据构造应该不是丁香园直接返回的,而是它爬取数据之后重新构造成这个格式的。

因为在这份数据里面有一个"source"标签指明数据来源是丁香园的这个网站,丁香园自己应该不会这样标注。 image

mrchenxxx commented 4 years ago

https://github.com/mokeeqian/wuhan-ncov 这是他的项目,那意思就是这是自己做的api了

BlankerL commented 4 years ago

https://github.com/mokeeqian/wuhan-ncov 这是他的项目,那意思就是这是自己做的api了

我看了一下他的代码一共不到10行只是从提取API的数据并且打印出来而已。

重点在于API的所有权是哪个组织。

我确定丁香园确实没有这个API(而且丁香园的服务器不是部署在腾讯云上的),但是GitHub搜索后看到有其他项目也在使用这个API:

  1. mokeeqian/wuhan-ncov
  2. fanhang64/relitu
  3. 2019-nCoV
  4. wuhan-support/dataset
  5. wuhan-support/robot

上面第5个项目中“友情链接”提到的疫情机器人项目里有提到爬虫模块以及推送更新。

个人猜测这个API应该是这个项目部署的爬虫和专供wuhan-support组织的其他项目使用的API,只不过API公开后其他人也在使用他们的API来提取数据。

我这边做的API主要不是为了提取实时信息的,更重要的是能够回溯历史数据,方便以后回顾数据变化。但是目前也加上了功能,默认提取实时信息了。

如果你觉得它的这个实时数据的API更方便,那就直接使用这一份API就好。

mrchenxxx commented 4 years ago

https://github.com/mokeeqian/wuhan-ncov 这是他的项目,那意思就是这是自己做的api了

我看了一下他的代码一共不到10行只是从提取API的数据并且打印出来而已。

重点在于API的所有权是哪个组织。

我确定丁香园确实没有这个API(而且丁香园的服务器不是部署在腾讯云上的),但是GitHub搜索后看到有其他项目也在使用这个API:

  1. mokeeqian/wuhan-ncov
  2. fanhang64/relitu
  3. 2019-nCoV
  4. wuhan-support/dataset
  5. wuhan-support/robot

上面第5个项目中“友情链接”提到的疫情机器人项目里有提到爬虫模块以及推送更新。

个人猜测这个API应该是这个项目部署的爬虫和专供wuhan-support组织的其他项目使用的API,只不过API公开后其他人也在使用他们的API来提取数据。

我这边做的API主要不是为了提取实时信息的,更重要的是能够回溯历史数据,方便以后回顾数据变化。但是目前也加上了功能,默认提取实时信息了。

如果你觉得它的这个实时数据的API更方便,那就直接使用这一份API就好。

谢谢你的回答,解决了我的疑惑,看了你的代码 我对爬虫有了新的认识,感谢!

BlankerL commented 4 years ago

https://github.com/mokeeqian/wuhan-ncov 这是他的项目,那意思就是这是自己做的api了

我看了一下他的代码一共不到10行只是从提取API的数据并且打印出来而已。 重点在于API的所有权是哪个组织。 我确定丁香园确实没有这个API(而且丁香园的服务器不是部署在腾讯云上的),但是GitHub搜索后看到有其他项目也在使用这个API:

  1. mokeeqian/wuhan-ncov
  2. fanhang64/relitu
  3. 2019-nCoV
  4. wuhan-support/dataset
  5. wuhan-support/robot

上面第5个项目中“友情链接”提到的疫情机器人项目里有提到爬虫模块以及推送更新。 个人猜测这个API应该是这个项目部署的爬虫和专供wuhan-support组织的其他项目使用的API,只不过API公开后其他人也在使用他们的API来提取数据。 我这边做的API主要不是为了提取实时信息的,更重要的是能够回溯历史数据,方便以后回顾数据变化。但是目前也加上了功能,默认提取实时信息了。 如果你觉得它的这个实时数据的API更方便,那就直接使用这一份API就好。

谢谢你的回答,解决了我的疑惑,看了你的代码 我对爬虫有了新的认识,感谢!

不客气😊

因为我看到这个API也很好奇丁香园如果有这样的API为什么不直接用这份数据...他们自己的网页静态渲染的数据看起来实在很尴尬...

项目里爬虫的内容其实不到10行,大部分代码是在做数据清洗和存放到数据库的操作。如果只是想知道爬虫的运作方法,只需要看爬虫的那一小个模块就好。