Когда этот код запускается, он может возвращать 6 изображений , включая дубликаты, это действительно сбивает с толку, и я хочу знать, как я могу изменить свой код, чтобы найти топ-30 постов (или что-то в этом роде) из r /dankmemes или / me_irl за исключением дубликатов.
Код:
from bs4 import BeautifulSoup
import requests
import re
import urllib.request
import urllib3
import os
import json
http = urllib3.PoolManager()
url = "https://old.reddit.com/r/me_irl"
response = http.request('GET', url)
soup = BeautifulSoup(response.data, "lxml")
tags = soup.find_all('a', href=True)
hrefs = [ ele['href'] for ele in tags if '.jpg' in ele['href']]
print(hrefs)
save_path = '/Users/eucar/Desktop/FirstImages'
ogname = "image_links.json"
completename = os.path.join(save_path, ogname)
with open(completename, "w") as output:
json.dump(hrefs, output)
import urllib.request as req
with open('/Users/eucar/Desktop/FirstImages/image_links.json') as images:
images = json.load(images)
for idx, image_url in enumerate(images):
try :
image_url = image_url.strip()
file_name = '/Users/eucar/Desktop/Instagrammemes/{}.{}'.format(idx, image_url.strip().split('.')[-1])
print('About to download {} to file {}'.format(image_url, file_name))
req.urlretrieve(image_url, file_name)
except :
print("All done")