Git คือระบบควบคุมเวอร์ชันที่ได้รับความนิยมมากที่สุด โดยที่นักพัฒนาหลายล้านคนจัดการโครงการหรือไฟล์ (โค้ด) ของตน ในนี้เราจะพยายามดึงที่เก็บที่ติดดาวมากที่สุด 10 อันดับแรกภายในหนึ่งเดือน
เนื่องจากเรากำลังขูดที่เก็บ GitHub เป็นหลัก เราจึงจะใช้เป็นหลัก
คำขอ &ไลบรารี BeautifulSoup เพื่อดึงที่เก็บ
เราจะเก็บผลลัพธ์ไว้ในไฟล์และแสดงผล มันจะแสดงผลตามตำแหน่ง (ดาว) พร้อมชื่อ &repos
ด้านล่างนี้คือโค้ดสำหรับติดตั้ง:
import requests from bs4 import BeautifulSoup r = requests.get('https://github.com/trending/lua?since=monthly') bs = BeautifulSoup(r.text, 'lxml') lista_repo = bs.find_all('ol', class_='repo-list') f1 = open('starred-repos.txt', 'w') for lr in lista_repo: aux = lr.find_all('div', class_='d-inline-block col-9 mb-1') for ld in aux: rank = ld.find_all('a') f1.writelines(str(rank)) f1.writelines('\n') f1.close() f1 = open('starred-repos.txt', 'r') texto = [] for x in f1: if x[0] == '[' and x[1] == '<' and x[2] == 'a': na = x.split('"') texto.append(na[1]) f1.close() f1 = open('starred-repos.txt', 'w') f1.writelines('{}\t {}\t\t {}\t\n\n'.format('Position ', 'Name ', 'Repositories ')) for i in range(10): tex= texto[i].split('/') name = tex[1] repos = tex[2] f1.writelines('{}- \t {}\t\t {}'.format(i + 1, name, repos)) f1.writelines('\n') f1.close() f1 = open('starred-repos.txt', 'r') print(f1.read()) f1.close()
ผลลัพธ์
Position Name Repositories 1- skywind3000 z.lua 2- Kong kong 3- Gawen WireHub 4- PapyElGringo material-awesome 5- koreader koreader 6- stijnwop guidanceSteering 7- Courseplay courseplay 8- Tencent LuaPanda 9- ntop ntopng 10- awesomeWM awesome