Python正则表达式与网站上的图像不匹配(它在正则表达式助手中匹配)

Python正则表达式与网站上的图像不匹配(它在正则表达式助手中匹配),python,html,regex,Python,Html,Regex,我不明白我下面的脚本有什么问题 它应该使用正则表达式解析图像。我已经通过使用验证了我的正则表达式是正确的 问题是它甚至没有抓取网站上的第一张图片(即使它应该抓取吗?) 脚本中的网站是一个NSFW博客。如果你被裸体或性行为冒犯,请不要访问链接。 from urllib2 import urlopen import re base = "http://bassrx.tumblr.com" url = "http://bassrx.tumblr.com/tagged/tt" def parse_p

我不明白我下面的脚本有什么问题

它应该使用正则表达式解析图像。我已经通过使用验证了我的正则表达式是正确的

问题是它甚至没有抓取网站上的第一张图片(即使它应该抓取吗?)

脚本中的网站是一个NSFW博客。如果你被裸体或性行为冒犯,请不要访问链接。

from urllib2 import urlopen
import re

base = "http://bassrx.tumblr.com"
url = "http://bassrx.tumblr.com/tagged/tt"

def parse_page(url):
# returns html for parsing
    page = urlopen(url)
    html = page.read()
    return html

def get_links(html):
# returns list of all image urls on page
    jpgs = re.findall("src.\"(.*?500.jpg)", html, re.IGNORECASE)
    #pngs = re.findall("src.\"(.*?media.tumblr.*?tumblr_.*?png)", html, re.IGNORECASE)
    #links = jpgs + pngs
    return jpgs


html = parse_page(url)      # get the html for first page
links = get_links(html)     # get all relevant image links
print links
第一个图像具有以下HTML:

src="http://37.media.tumblr.com/tumblr_m9q9feJcxl1qi02clo3_500.jpg" alt="">
我想知道为什么它没有抓取这张图片(也没有抓取大多数其他图片)。

考虑使用它来抓取这张图片

>>> from urllib2 import urlopen
>>> from bs4 import BeautifulSoup
>>> import re

>>> page = urlopen('http://bassrx.tumblr.com/tagged/tt')
>>> soup = BeautifulSoup(page.read())
>>> [x['src'] for x in soup.find_all('img',{'src':re.compile('500\.jpg$')})]
输出

[
  u'http://38.media.tumblr.com/tumblr_ln5gwxHYei1qi02clo1_500.jpg',
  u'http://37.media.tumblr.com/tumblr_lnmh4tD3sM1qi02clo1_500.jpg',
  u'http://38.media.tumblr.com/c84fce183b6220eba854ce8933a13110/tumblr_n3lxgtqp7K1qi02clo1_500.jpg'
]
如果需要整个图像标记,请使用以下命令:

>>> soup.find_all('img',{'src':re.compile('500\.jpg$')})

很好。[“”,,“也许服务器太了解你了,把你当作垃圾邮件/黑客对待,给你发送没有图像的页面。@user8708它不工作。它不会抓取第一个图像:tumblr_m9q9feJcxl1qi02clo3_500.jpg???@furas它似乎给我发送了所有的html,所以我不认为是这样。@Daniel你是如何测试它的?通过运行实际的脚本?就像它一样还是不适合我。。