Я пытался соскрести URL-адреса постов с Instagram на основе хэштега "foody". Используя селен и BeautifulSoup, я мог очистить около 2160 URL-адресов сообщений.
Однако я не мог очистить дальше (более 4 000 000 сообщений). Есть ли альтернативы, чтобы поцарапать все посты с помощью «гадкого» хэштега? Или хотя бы URL-адреса постов, которые были опубликованы в период между 2018-2019 гг.?
Ниже приведен мой код для удаления.
Спасибо!
instagram_url = "https://www.instagram.com"
tag_url = "https://www.instagram.com/explore/tags"
ads = "foody" # hashtag
#pausetime
pause_time = 2
#driver
driver = webdriver.Chrome("chromedriver.exe")
#go to hashtag page
driver.get(f"{tag_url}/{ads}")
time.sleep(pause_time)
#scroll down
lenOfPage = driver.execute_script("window.scrollTo(0, document.body.scrollHeight);var lenOfPage=document.body.scrollHeight;return lenOfPage;")
match=False
i = 0
while(match==False):
#urls
html = driver.page_source
bs_html = BeautifulSoup(html, "lxml")
for roots in bs_html.find_all(name="div", attrs={"class":"Nnq7C weEfm"}):
for link in roots.select("a"):
real = link.attrs["href"]
if real not in reallink:
reallink.append(real)
print("appendend data: ", len(reallink))
#Scroll down
lastCount = lenOfPage
print(f"scrolling down {i}")
i += 1
time.sleep(pause_time)
lenOfPage = driver.execute_script("window.scrollTo(0, document.body.scrollHeight);var lenOfPage=document.body.scrollHeight;return lenOfPage;")
if lastCount==lenOfPage:
match=True