首页 > re小问题,新手轻喷

re小问题,新手轻喷

尝试抓取instagram图片分享地址从而下载图片

# -*- coding: utf-8 -*-
import urllib2
import re

response = urllib2.urlopen('https://www.instagram.com/p/BG5SpsYuSr-/')
html = response.read()  
#print html

catch = re.compile(r'//*[display_src="(.+?\.jpg)"]')
urls = re.findall(catch,html)
for i, url in enumerate(urls):
    print url
    

查看源代码发现图片地址在这两个地方

想请教一下各位怎样抓取图片的下载地址?


从第二张图可以看出,图片地址在js对象里,根据经验,图片很可能是js加上去的,目标网站我进不去,所以我也不清楚他是怎样的。
你可以试着用这段正则把js对象提取出来,转换成json,然后就像操作字典一样,获取你想要的数据了

<script type="text/javascript">[\w ]+=([\s\S]+?);</script>

from pyquery import PyQuery as Q
import urllib2

response = urllib2.urlopen('https://www.instagram.com/p/BG5SpsYuSr-/')
html = response.read()
print Q(html).find('meta[property="og:image"]').attr('content')
【热门文章】
【热门文章】