我目前正在编写一个有趣的Instagram故事抓取器代码,因为为什么不这样做,我已经到达需要下载故事文件的地步,但是图像/视频的源代码不在HTML代码中。我可以使用一个过程来将图像加载到浏览器的URL中吗?还是有其他更有效的方法?
我尝试查找图像的来源,但由于它们是在HTML外部加载的,因此不存在。
from selenium import webdriver
import selenium
import time
story_page = "https://www.instagram.com/stories" + "/" + account_purging
driver = webdriver.Firefox()
# Login
driver.get("https://www.instagram.com/accounts/login/")
time.sleep(1)
driver.find_element_by_name('username').send_keys(myusername)
driver.find_element_by_name('password').send_keys(mypassword)
time.sleep(2)
# Click Login
try:
driver.find_element_by_xpath("/html/body/span/section/main/div/article/div/div[1]/div/form/div[4]/button/div").click()
except Exception as e:
print(e)
driver.find_element_by_xpath("/html/body/span/section/main/div/article/div/div[1]/div/form/div[5]/button").click()
time.sleep(2)
# Go To stories
driver.get(story_page)
time.sleep(1)
#Download stories seen
img = driver.find_element_by_xpath("/html/body/span/section/div/div/section/div[2]/div[4]")
src = img.get_attribute('src')
print(src)
由于不存在直接可见的源链接,因此代码返回为None。使用源代码编辑器中的“网络”按钮,我可以手动找到它,但是我知道有一种更有效的方法。
编辑: 这是一个故事网址的示例。也许有办法使用这种方法?
https://scontent-ort2-1.cdninstagram.com/vp/b83f011616e4bb20c52cbc21ca17213f/5CA3832C/t50.12441-16/56522959_2235298350017959_2397626998618515587_n.mp4?_nc_ht=scontent-ort2-1.cdninstagram.com