[英]How can I count all the jobs listing on the other pages in Python?
我正在尝试拨打 API 电话并计算所有页面的所有招聘信息。 问题是我只设法在第一页获得计数,并且在为下一页进行另一个 API 调用时遇到了麻烦。 只是提到每页最多有 50 个作业。 提前致谢!
import requests
baseurl = "https://jobs.github.com/positions.json"
def get_number_of_jobs(technology):
number_of_jobs = 0
page_count = 0
tech = {'description': technology}
response = requests.get(baseurl, params=tech)
if response.ok:
jobs = response.json()
for job in jobs:
for elm in job:
if elm == 'id':
number_of_jobs += 1
if number_of_jobs > 49:
page_count += 1
tech = {'description': technology, 'page': page_count}
response = requests.get(baseurl, params=tech)
jobs = response.json()
number_of_jobs += 1
return technology,number_of_jobs
我认为您正在寻找这样的东西,您可以使用len()
而不是循环遍历并计算“id”属性。
import requests
baseurl = "https://jobs.github.com/positions.json"
def get_number_of_jobs(technology):
job_count = 50
total_job_count = 0
page_count = 1
while job_count > 49:
job_count = 0
# send request to GitHub for the next page
tech = {'description': technology, 'page': page_count}
response = requests.get(baseurl, params=tech)
if response.ok:
jobs = response.json()
page_count += 1
job_count = len(jobs)
total_job_count += job_count
return technology,total_job_count
print(get_number_of_jobs("java"))
您进行的第一个调用是第 1 页,因此您将在算法中调用第 1 页两次,您可以从 1 开始,如果 > 49 继续循环。
Python 结果:
Java 的 Github 职位发布:
如果您需要任何澄清,请告诉我,
谢谢,
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.