Instagram Scraping:我将如何保存故事?

时间:2019-03-31 19:01:41

标签: python python-3.x selenium web-scraping instagram

我目前正在编写一个有趣的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

1 个答案:

答案 0 :(得分:0)

我找到了解决方法here。基本上,这是通过使用检查元素工具中的“网络”标签解决的。