forked from TheAlgorithms/Python
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathget_imdbtop.py
More file actions
20 lines (16 loc) · 718 Bytes
/
get_imdbtop.py
File metadata and controls
20 lines (16 loc) · 718 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
from bs4 import BeautifulSoup
import requests
def imdb_top(imdb_top_n):
base_url = (
f"https://www.imdb.com/search/title?title_type="
f"feature&sort=num_votes,desc&count={imdb_top_n}"
)
source = BeautifulSoup(requests.get(base_url).content, "html.parser")
for m in source.findAll("div", class_="lister-item mode-advanced"):
print("\n" + m.h3.a.text) # movie's name
print(m.find("span", attrs={"class": "genre"}).text) # genre
print(m.strong.text) # movie's rating
print(f"https://www.imdb.com{m.a.get('href')}") # movie's page link
print("*" * 40)
if __name__ == "__main__":
imdb_top(input("How many movies would you like to see? "))