美文网首页玩耍PythonPython 运维Pythoner集中营
Python: 封装版本爬取虎扑篮球图片

Python: 封装版本爬取虎扑篮球图片

作者: bluescorpio | 来源:发表于2016-08-02 15:13 被阅读71次

本文是上一篇的续后期将进行封装,以提高可用性。

虎扑在展示图片的时候偷懒了,直接给出了原图链接,直接获取这个链接,下载到本地即可。

这里使用PhantomJS来打开浏览器。

使用urllib2下载图片

# download one picture by urllib2
def downloadPicture(pic_url, pic_path):
    f = urllib2.urlopen(pic_url)
    with open(pic_path, "wb") as img_file:
        img_file.write(f.read())

逐个获取每个图片

def getPictures(elem_url, nums, path):
    try:
        count = 1
        t = elem_url.find(r'.html')
        while (count <= nums):
            html_url = elem_url[:t-2] + '-' + str(count) + '.html'
            # Set proxy
            proxy_support = urllib2.ProxyHandler({"http": "http://yout_proxy:8080/"})
            opener = urllib2.build_opener(proxy_support)
            urllib2.install_opener(opener)
            driver.get(html_url)
            elem = driver.find_element_by_xpath("//div[@class='pic_bg']/div/img")
            url = elem.get_attribute("src")
            file_name = os.path.basename(url).replace('*','')
            fname = path + "\\" + file_name
            downloadPicture(url, fname)
            count += 1
    except Exception, e:
        print "Error: ", e
    finally:
        print "Download " + str(count-1) + ' pictures\n'

主程序

if __name__ == "__main__":
    elem_url = "http://photo.hupu.com/nba/p29556-1.html"
    nums = 15
    # Create folder for store picture
    sub_folder = os.path.join(os.getcwd(), "hupupic")
    if not os.path.exists(sub_folder):
        os.mkdir(sub_folder)
    # os.chdir(sub_folder)
    pic_path = sub_folder
    getPictures(elem_url, nums, pic_path)

相关文章

  • Python: 封装版本爬取虎扑篮球图片

    本文是上一篇的续后期将进行封装,以提高可用性。 虎扑在展示图片的时候偷懒了,直接给出了原图链接,直接获取这个链接,...

  • Python: 实验爬取虎扑篮球图片

    编程确实是一个锻炼逻辑思维最有效的工具之一,之前自学Python。总是陷入一个怪圈:看入门数据--一段时间不用忘记...

  • 虎扑图片爬虫

    平时喜欢看篮球,所以经常逛虎扑,这几天写爬虫,所以就想写个爬虫爬一下虎扑帖子里面的图片。 一般来说,帖子里面图片是...

  • Python简单爬虫爬取虎扑社区福利gif图片

    以下程序亲测成功,重点代码都加了注释,就不一一介绍了。爬取结果各位自行体会。PS:爬取前先在当前文件夹建立hupu...

  • 热点平台搭建(一)——Python爬取热榜数据

    寻找要爬取热榜 要爬取热榜当然先要确定爬哪个,这里我已爬取虎扑步行街热榜为例。网址:https://bbs.hup...

  • Python学习

    python爬虫(六) python爬取图片素材 通过爬虫爬取图片的地址以及电影的名称,然后将图片素材命名为电影名...

  • #3虎扑体育-谈谈如何解决用户需求

    产品名称:虎扑体育 版本信息:7.0.10.8492 因为我本身比较喜欢篮球,所以分析虎扑体育我会偏重于就NBA体...

  • Python爬取图片

    Python爬取某个链接里面的图片

  • python爬取百度图片代码

    python爬取百度图片代码

  • 虎扑篮球

    [cp]【斯马特:我们经历过伤病,现在只想着赢球】戈登-海沃德、凯里-欧文和丹尼尔-泰斯本赛季都不会回归,而杰伦-...

网友评论

    本文标题:Python: 封装版本爬取虎扑篮球图片

    本文链接:https://www.haomeiwen.com/subject/elifsttx.html