Danh mục đầu tư Python GitHub

Chúc mừng năm mới 2022. Là bài viết đầu tiên của năm mới, tôi rất tò mò về các dự án Python phổ biến nhất cho đến nay là gì. GitHub chắc chắn là nơi phù hợp nhất để có những thống kê này. Mặc dù không phải tất cả các dự án nguồn mở sẽ được duy trì ở đây, nhưng sẽ không có bất kỳ nơi nào khác có khả năng này

Show

Xếp hạng này có nghĩa là dễ dàng vì tôi sẽ chia sẻ mã của mình. Bây giờ, hãy xem cách chúng ta có thể lấy danh sách xếp hạng từ API GitHub với một vài dòng mã. Sau đó, tôi sẽ phân loại các dự án này bằng thuật ngữ của mình và sau đó thêm một số lời giới thiệu ngắn cho chúng

30 dự án GitHub hàng đầu được phân loại như sau

  • 7 repo cải thiện năng suất
  • 3 repos là các framework lập trình
  • 5 repos hỗ trợ machine learning
  • 4 repos tạo điều kiện thuận lợi cho cuộc sống thực
  • 6 repos thu thập và sắp xếp thông tin hữu ích
  • 5 repos dạy một số môn học
API tìm kiếm GitHub

Hình ảnh được cung cấp bởi Arek Socha từ Pixabay

Tài liệu API chính thức có thể được tìm thấy tại trang này. https. // tài liệu. github. com/en/rest/reference/search#search-repositories

Vì vậy, tôi sẽ không lặp lại các chi tiết như thông số trong bài viết này. Nếu bạn quan tâm đến những gì chúng tôi có thể làm, vui lòng tham khảo trang đó

Điều tuyệt vời nhất là chúng tôi không cần phải đăng ký hoặc đăng ký khóa API để sử dụng điểm cuối này. Tất nhiên, nó có giới hạn tốc độ lên tới 10 yêu cầu mỗi phút, nhưng sẽ khá đủ để chúng tôi kiểm tra mã và kéo danh sách xếp hạng

Trước hết, chúng ta cần sử dụng mô-đun requests của Python. Nó được tích hợp sẵn và tôi tin rằng hầu hết các bạn sẽ quen thuộc với nó. Sau đó, chúng ta cần Pandas thực hiện một số chuyển đổi dữ liệu

import requests
import pandas as pd

URL là

url = 'https://api.github.com/search/repositories?q=language:python&sort=stars&order=desc'
0 dựa trên tài liệu API. Vì chúng tôi chỉ quan tâm đến các dự án dựa trên Python, nên chúng tôi cần đặt đối số
url = 'https://api.github.com/search/repositories?q=language:python&sort=stars&order=desc'
1 trong truy vấn. Sau đó, chúng tôi muốn sắp xếp kết quả tìm kiếm theo số lượng sao và sắp xếp theo thứ tự giảm dần

url = 'https://api.github.com/search/repositories?q=language:python&sort=stars&order=desc'

Sau đó, chúng ta có thể sử dụng mô-đun requests để gọi điểm cuối API này. Chúng ta nên sử dụng phương thức GET. Sau đó, chúng ta có thể chuyển đổi kết quả thành từ điển Python

res = requests.get(url)
res_dict = res.json()

Tất cả các kết quả tìm kiếm sẽ nằm trong một mảng với từ khóa “items”. Vì vậy, chúng tôi có thể nhận được tất cả các thông tin repo như sau. Kích thước trang mặc định là 30, vì vậy chúng tôi sẽ có 30 repos. Chúng chính xác là 30 Repos Python hàng đầu. )

repos = res_dict['items']
len(repos)

Có một số thông tin khác trong từ điển kết quả. Nếu chúng tôi xóa mảng mục, chúng tôi có thể thấy nó cho biết rằng kết quả tìm kiếm có nhiều trang hơn và có tổng cộng 8.046.758 Bản ghi Python vào thời điểm tôi kích hoạt yêu cầu

Bây giờ, hãy chuyển đổi mảng mục thành khung dữ liệu Pandas

repo_df = pd.DataFrame(repos)

Sau đó, tôi muốn xóa tất cả các cột không quan tâm. Tôi cũng sẽ thêm một cột nữa có tên là

url = 'https://api.github.com/search/repositories?q=language:python&sort=stars&order=desc'
0 để biết dự án này đã được tạo bao nhiêu năm trên GitHub

repo_df = repo_df[['name', 'full_name', 'html_url', 'created_at', 'stargazers_count', 'watchers', 'forks', 'open_issues']]
repo_df['created_at'] = pd.to_datetime(repo_df['created_at'])
repo_df['created_year'] = repo_df['created_at'].dt.year
repo_df['years_on_github'] = 2022 - repo_df['created_at'].dt.year

Dưới đây là danh sách đầy đủ của Top 30 Repos

Repos cải thiện năng suất

Hình ảnh được cung cấp bởi Maria_Domnina từ Pixabay

Các dự án này tạo điều kiện thuận lợi cho công việc hàng ngày của chúng tôi và cải thiện năng suất của chúng tôi, chẳng hạn như thêm một số tính năng vào hệ điều hành

1. thefxxk (xếp thứ 6, 65.988 sao)

Xin lưu ý rằng tên được mã hóa vì tôi đang viết một bài báo cho mọi lứa tuổi. )

Công cụ này có thể giúp chúng tôi sửa lỗi trong các lệnh trước đó khi chúng tôi đang sử dụng bảng điều khiển chẳng hạn như trong môi trường Linux hoặc GitBash

Hình ảnh lịch sự. https. // thô. githubusercontent. com/nvbn/thefuck/master/ví dụ. gif

2. httpie (xếp thứ 9, 53.255 sao)

HTTPie là một máy khách HTTP dòng lệnh. Mục tiêu của nó là làm cho tương tác CLI với các dịch vụ web trở nên thân thiện với con người nhất có thể. HTTPie được thiết kế để thử nghiệm, gỡ lỗi và thường tương tác với API & máy chủ HTTP. Các lệnh

url = 'https://api.github.com/search/repositories?q=language:python&sort=stars&order=desc'
1 &
url = 'https://api.github.com/search/repositories?q=language:python&sort=stars&order=desc'
2 cho phép tạo và gửi các yêu cầu HTTP tùy ý. Chúng sử dụng cú pháp đơn giản và tự nhiên, đồng thời cung cấp đầu ra được định dạng và tô màu

Hình ảnh lịch sự. https. // thô. githubusercontent. com/httpie/httpie/master/docs/httpie-animation. gif

3. bạn nhận được (xếp thứ 12, 42.791 sao)

Đây là một tiện ích dòng lệnh nhỏ để tải xuống nội dung phương tiện (video, âm thanh, hình ảnh) từ Web, trong trường hợp không có cách nào khác thuận tiện để thực hiện

4. localstack (xếp thứ 16, 38.008 sao)

Repo này là trình giả lập dịch vụ đám mây chạy trong một vùng chứa duy nhất trên máy tính xách tay của bạn hoặc trong môi trường CI của bạn. Với LocalStack, bạn có thể chạy hoàn toàn các ứng dụng AWS hoặc Lambdas trên máy cục bộ của mình mà không cần kết nối với nhà cung cấp đám mây từ xa. Cho dù bạn đang thử nghiệm các ứng dụng CDK phức tạp hay cấu hình Terraform hay mới bắt đầu tìm hiểu về các dịch vụ AWS, LocalStack sẽ giúp tăng tốc và đơn giản hóa quy trình thử nghiệm và phát triển của bạn

5. bóng tối (xếp thứ 20, 33.099 sao)

Shadowsocks là một dự án giao thức mã hóa nguồn mở và miễn phí, được sử dụng rộng rãi ở Trung Quốc để vượt qua kiểm duyệt Internet. Repo này đã bị xóa do vi phạm quy định vào thời điểm bài viết này được viết

6. giàu có (xếp thứ 23, 32.075 sao)

Repo này giúp dễ dàng thêm màu sắc và kiểu dáng vào đầu ra của thiết bị đầu cuối. Nó cũng có thể hiển thị các bảng đẹp, thanh tiến trình, đánh dấu, mã nguồn được tô sáng cú pháp, truy nguyên, v.v.

Có một bài viết của mình giới thiệu chi tiết về thư viện này

Hiển thị văn bản có định dạng trong bảng điều khiển bằng Python

hướng tới khoa học dữ liệu. com

7. certbot (xếp thứ 30, 28.587 sao)

Certbot là một phần trong nỗ lực của EFF nhằm mã hóa toàn bộ Internet. Giao tiếp an toàn qua Web dựa trên HTTPS, yêu cầu sử dụng chứng chỉ kỹ thuật số cho phép trình duyệt xác minh danh tính của máy chủ web (e. g. , đó thực sự là google. com?). Các máy chủ web lấy chứng chỉ của họ từ các bên thứ ba đáng tin cậy được gọi là cơ quan cấp chứng chỉ (CA). Certbot là một ứng dụng khách dễ sử dụng, lấy chứng chỉ từ Let's Encrypt — cơ quan cấp chứng chỉ mở do EFF, Mozilla và các tổ chức khác khởi chạy — và triển khai chứng chỉ đó cho máy chủ web

Repos là các khung lập trình

Hình ảnh được cung cấp bởi Capri23auto từ Pixabay

Các repos này đều là các framework rất nổi tiếng dành cho phát triển web hoặc một số phát triển phần mềm khác

1. bình (xếp thứ 7, 57.584 sao)

Không cần giới thiệu quá nhiều về framework này, tôi đoán vậy. Nếu bạn đang sử dụng Python để phát triển web, bạn phải từng sử dụng nó hoặc ít nhất là biết về nó

2. phế liệu (xếp thứ 14, 42.471 sao)

Đây là framework “phải học” nếu bạn muốn sử dụng Python để quét web. Nó đơn giản hóa và tự động hóa công việc trích xuất thông tin từ các trang web. Nó được sử dụng để thu thập dữ liệu các trang web và trích xuất dữ liệu có cấu trúc từ các trang của họ. Nó có thể được sử dụng cho nhiều mục đích, từ khai thác dữ liệu đến giám sát và kiểm tra tự động

3. fastapi (xếp thứ 15, 40.363 sao)

Tương tự như jar, đây cũng là một framework phổ biến trong Python để phát triển web backend. Trọng tâm của nó là sử dụng ít mã nhất để viết các API Web thông thường. Nếu phụ trợ của bạn không quá phức tạp, hãy sử dụng nó

Repos hỗ trợ học máy

Hình ảnh được cung cấp bởi Gerd Altmann từ Pixabay

Machine Learning chắc chắn là cách sử dụng Python phổ biến nhất. Vì vậy, không ngạc nhiên khi có rất nhiều dự án liên quan đến học máy trong danh sách này.

1. người mẫu (xếp thứ 5, 72.417 sao)

Nếu bạn đã từng nghe nói về học máy bằng Python, thì bạn hẳn đã từng nghe về TensorFlow. Repo này còn được gọi là “Khu vườn TensorFlow Modul”. Nó tổ chức các mô hình học máy và triển khai chúng bằng TensorFlow với các ví dụ. Các mô hình có thể từ TensorFlow chính thức, từ một số dự án nghiên cứu nổi tiếng hoặc cộng đồng. Chúng có thể rất hữu ích để tiết kiệm thời gian của chúng tôi khi chúng tôi muốn sử dụng bất kỳ mô hình máy học nào trong TensorFlow

2. máy ảnh (xếp thứ 8, 53.638 sao)

Khung học máy rất phổ biến trong Python. Nó cung cấp rất nhiều API cấp cao cho phép Nhà khoa học dữ liệu đào tạo một mô hình học sâu với ít mã nhất

3. face_recognition (xếp thứ 13, 42.762 sao)

Đúng như tên gọi, dự án này có thể Nhận dạng và thao tác khuôn mặt từ Python hoặc dòng lệnh. Nó được tuyên bố là thư viện Nhận dạng khuôn mặt đơn giản nhất thế giới. Chỉ cần nhập một hình ảnh có khuôn mặt người, nó sẽ xác định và định vị nó. Sau đó, bạn thậm chí có thể sửa đổi nó bằng một số tính năng vượt trội

4. Nhân bản giọng nói theo thời gian thực (xếp thứ 21, 32.607 sao)

Tôi muốn đặt cái này vào danh mục ML, vì đây là một dự án tuyệt vời nhưng chúng ta cần cẩn thận rằng nó không nên bị lạm dụng. Về cơ bản, nó có thể “học” giọng nói của ai đó từ đoạn ghi âm giọng nói dài 5 giây và sau đó sử dụng chính giọng nói đó để nói bất cứ điều gì. Dưới đây là video demo của tác giả

5. DeepFaceLab (xếp thứ 27, 30.651 sao)

Nếu bạn đã từng xem các video “deepfake”, rất có thể chúng được tạo bởi dự án này. Nó học một khuôn mặt người và “cấy ghép” nó vào một video khác để thay thế khuôn mặt đó bằng khuôn mặt mà nó đã học. Có thể có rất nhiều vấn đề đạo đức nhưng dự án này thực sự tuyệt vời

Repos tạo điều kiện thuận lợi cho cuộc sống thực

Hình ảnh được cung cấp bởi chien than từ Pixabay

Các repo này được viết bằng Python, nhưng chúng được sử dụng trong đời thực. Họ có thể tiết kiệm thời gian của chúng tôi hoặc cho phép chúng tôi làm một số điều rất thú vị

1. cốt lõi (xếp thứ 11, 48.763 sao)

Repo này là tự động hóa gia đình nguồn mở đặt quyền kiểm soát cục bộ và quyền riêng tư lên hàng đầu. Được hỗ trợ bởi cộng đồng những người thích mày mò và những người đam mê DIY trên toàn thế giới. Hoàn hảo để chạy trên Raspberry Pi hoặc máy chủ cục bộ. Nó được sử dụng bởi nhiều sản phẩm tự động hóa gia đình thành công như Amazon Alexa và Google Cast

2. openpilot (xếp thứ 24, 31.998 sao)

Repo này là một hệ thống hỗ trợ trình điều khiển mã nguồn mở. Nó thực hiện các chức năng của Kiểm soát hành trình thích ứng (ACC), Định tâm làn đường tự động (ALC), Cảnh báo va chạm phía trước (FCW) và Cảnh báo chệch làn đường (LDW) cho nhiều loại xe, mẫu xe và năm sản xuất được hỗ trợ. Tuy nhiên, bạn cần phải mua sản phẩm của họ và cài đặt nó trên xe của bạn. Nó không hoàn toàn DIY nhưng làm giảm nỗ lực

3. XX-Net (xếp thứ 26, 31.002 sao)

Đây là một công cụ proxy để vượt qua “Great Firewall” của Trung Quốc để cho phép người dùng Internet Trung Quốc duyệt một số trang web nhất định như YouTube và Facebook

4. 12306 (xếp thứ 28, 30,401 sao)

12306 là số hotline đặt vé tàu ở Trung Quốc, nó cũng được dùng làm tên miền khi họ bắt đầu đặt vé trực tuyến cách đây khoảng 15 năm. Repo này là một công cụ đặt vé tự động vì có thể thiếu chỗ trong thời gian cao điểm và rất khó để đặt chỗ. Đây là cách các nhà phát triển giải quyết vấn đề. )

Repos thu thập và sắp xếp thông tin hữu ích

Hình ảnh được cung cấp bởi Ahmad Ardity từ Pixabay

Các kho lưu trữ này có thể không duy trì quá nhiều mã, nhưng chúng đang sử dụng Python để thu thập thông tin này hoặc thông tin về Python. Thông tin được coi là rất hữu ích để chúng được xếp hạng cao như vậy

1. public-apis (xếp hạng 1, 173.658 sao)

Repo này đã tổ chức hàng trăm API miễn phí có thể được sử dụng để phát triển phần mềm và web. Nhiều người trong số họ rất thú vị, chẳng hạn như Sự thật thú vị ngẫu nhiên tạo ra một sự thật thú vị mỗi khi chúng tôi gọi nó. Ngoài ra còn có một số API rất hữu ích như API Colormind có thể được sử dụng để tạo mã màu tuyệt đẹp có khả năng được sử dụng trong trực quan hóa dữ liệu của chúng tôi. Ngoài ra, có nhiều API mở của chính phủ có thể được sử dụng để trích xuất số liệu thống kê về một quốc gia

2. awesome-python (xếp thứ 4, 112.609 sao)

Repo này đã tổ chức hàng trăm dự án GitHub Python “tuyệt vời” khác. Chúng có thể rất hữu ích để bạn “phản trọng lực”. ) Các dự án được phân loại để dễ dàng tìm thấy dự án chúng tôi cần

3. awesome-machine-learning (xếp thứ 10, 52.487 sao)

Tương tự như trên, kho lưu trữ này thu thập các dự án máy học

4. funNLP (xếp thứ 17, 35.922 sao)

Đây là một repo của Trung Quốc, mặc dù nó cũng có thể được sử dụng cho tiếng Anh. Tuy nhiên, tài liệu không cung cấp phiên bản tiếng Anh. Nó cung cấp các từ điển NLP như từ nhạy cảm, bộ công cụ NLP và một số tài liệu học tập

5. interview_internal_reference (xếp thứ 19, 33.135 sao)

Một repo khác của Trung Quốc. Nó tổ chức các câu hỏi phỏng vấn thường xuyên từ những công ty nổi tiếng như Huawei. Nó cũng cung cấp kiến ​​thức cơ bản mà bạn phải biết với tư cách là nhà phát triển dữ liệu, chẳng hạn như thuật toán và nguyên tắc thiết kế cơ sở dữ liệu

6. Deep-Learning-Papers-Reading-Roadmap (xếp thứ 24, 31.521 sao)

Nếu bạn muốn học máy học từ những điều cơ bản, repo này có thể là một khởi đầu tốt. Nó vẽ ra một “lộ trình” về sự phát triển của máy học trong lịch sử bằng cách sử dụng các bài báo học thuật

Repos dạy một số chủ đề

Hình ảnh được cung cấp bởi Stefan Meller từ Pixabay

Các repo này không dành cho mã hóa. Có thể coi chúng như một “cuốn sách” mã nguồn mở. Thông tin họ cung cấp có thể được sử dụng để học một cái gì đó

1. system-design-primer (xếp thứ 2, 157.775 sao)

Repo này là một viên ngọc quý nếu bạn muốn bắt đầu sự nghiệp kiến ​​trúc sư hệ thống của mình. Nó giới thiệu rất nhiều khái niệm hữu ích với các sơ đồ cần thiết để chứng minh. Bạn có thể tìm thấy gần như tất cả những gì bạn muốn biết, chẳng hạn như khi nào nên sử dụng SQL hoặc NoSQL, cách thiết kế cơ sở dữ liệu quan hệ phân tán và proxy ngược là gì

2. Python-100-Days (xếp thứ 3, 113.812 sao)

Repo này bằng tiếng Trung và nó trở nên rất phổ biến vì nhiều nhà phát triển đang học Python ở Trung Quốc. Nó sắp xếp kiến ​​thức lập trình Python thành 100 phần để người học có thể hoàn thành trong 100 ngày nếu họ kiên trì học một trong số chúng mỗi ngày. Thật không may, nó không được dịch sang tiếng Anh

3. PayloadsAllTheThings (xếp hạng 18, 33.407 sao)

Repo này hiển thị danh sách các tải trọng hữu ích và bỏ qua cho Bảo mật ứng dụng web. Nếu bạn muốn trở thành một nhà phát triển web có kinh nghiệm, muốn tránh các lỗ hổng và bẫy bảo mật phổ biến, thì đây là tài liệu phải học. Hầu như tất cả các khái niệm được thực hiện với một ví dụ Python

4. AiLearning (xếp thứ 22, 32.517 sao)

Một repo tiếng Trung dạy từ cơ bản Python đến khung ML PyTorch

5. d2l-zh (xếp thứ 29, 29, 618 sao)

Đây là cuốn sách có tên là “Dive into Deep Learning”. Mặc dù repo này bằng tiếng Trung, nhưng phiên bản tiếng Anh (phiên bản gốc) có thể được tìm thấy như sau

https. //www. d2l. ai/

Tóm lược

Hình ảnh được cung cấp bởi Kanenori từ Pixabay

Vì cách tôi định nghĩa “phổ biến” chỉ đơn giản là sử dụng số lượng sao, rõ ràng là một số repos dạy một số môn học và sắp xếp thông tin sẽ được xếp hạng rất cao. Đó là bởi vì mọi người sẽ có xu hướng thêm các ngôi sao dưới dạng “dấu trang”. Mã được cung cấp, vì vậy bạn có thể cân nhắc thêm về thứ hạng này và thỏa mãn trí tò mò của mình

Tham gia Medium với liên kết giới thiệu của tôi - Christopher Tao

Là thành viên Phương tiện, một phần phí thành viên của bạn sẽ được chuyển đến các tác giả mà bạn đã đọc và bạn có toàn quyền truy cập vào mọi câu chuyện…

trung bình. com

Nếu bạn cảm thấy bài viết của tôi hữu ích, hãy cân nhắc tham gia Medium Membership để ủng hộ tôi và hàng ngàn người viết khác. (Nhấp vào liên kết ở trên)

Tôi có thể sử dụng GitHub làm danh mục đầu tư không?

Một điều thú vị khác về GitHub là bạn có thể lưu trữ danh mục đầu tư của mình miễn phí , ngoài việc có quyền truy cập vào một lượng lớn người xem miễn phí như nhau.

Những gì nên có trong một danh mục đầu tư python?

Ý tưởng dự án danh mục đầu tư Python hàng đầu .
Dự án phân tích và trực quan hóa dữ liệu. Để đưa ra quyết định kinh doanh vững chắc, các tổ chức cần thu thập nhiều dữ liệu. .
Dự án cạo web. .
Dự án học sâu. .
Ứng dụng web. .
trình rút ngắn URL. .
Tổ chức các tập tin. .
giao dịch tiền điện tử