python获取beautifulphoto随机某图片代码实例

yipeiwu_com7年前Python基础

Beautiful Photo!: http://www.beautifulphoto.net/

复制代码 代码如下:

import urllib2
import re

_random_url = r'http://www.beautifulphoto.net/plugin/RndArticle/'
_img_patt = re.compile(r'<img src="http://www\.beautifulphoto\.net/upload/(\d+)\.jpg" />')

def random(timeout=3, more=False):
    try:
        html = urllib2.urlopen(_random_url, timeout=timeout).read()
    except urllib2.URLError, e:
        return None
    res = re.search(_img_patt, html)
    if res:
        name = res.group(1)
        if more:
            return '/zb_users/upload/202003/z3u5xjh4qu4.jpg' % name, '%s.jpg' % name
        return '/zb_users/upload/202003/jf0ocgzt1ev.jpg' % name
    return None

if __name__ == '__main__':
    url = random()
    print(url)
    if url:
        import webbrowser as wb
        wb.open(url)

相关文章

在Django的View中使用asyncio的方法

起步 Django 是个同步框架,本文并不是 让 Django 变成异步框架。而是对于在一个 view 中需要请求多次 http api 的场景。 一个简单的例子 例子来源于&nbs...

numpy中实现二维数组按照某列、某行排序的方法

如何根据二维数组中的某一行或者某一列排序?假设data是一个numpy.array类型的二维数组,可以利用numpy中的argsort函数进行实现,代码实例如下: data = da...

Python提示[Errno 32]Broken pipe导致线程crash错误解决方法

本文实例讲述了Python提示[Errno 32]Broken pipe导致线程crash错误解决方法。分享给大家供大家参考。具体方法如下: 1. 错误现象 ThreadingHTTPS...

python使用threading.Condition交替打印两个字符

Python中使用threading.Condition交替打印两个字符的程序。 这个程序涉及到两个线程的的协调问题,两个线程为了能够相互协调运行,必须持有一个共同的状态,通过这个状态来...

关于python之字典的嵌套,递归调用方法

一 字典的嵌套 在机器学习实战决策树部分,生成决策树时用到了字典的嵌套。 >>>s1={'no surface':{}} >>>s1['no su...