【week1】day4:爬取霉霉图片

1,基础知识

  • 获取网页中的动态数据

2, 自己动手写程序

  • The code

from bs4 import BeautifulSoup
import requests, urllib, time

#proxies = {"http": "http://139.162.8.118"}

proxy_support = urllib.request.ProxyHandler({'http': '127.0.0.1:8787'})
opener = urllib.request.build_opener(proxy_support)
urllib.request.install_opener(opener)

def get_page(url, page, data = None):
    wb_data = requests.get(url)
    soup = BeautifulSoup(wb_data.text, 'lxml')

    imgs = soup.select('img.entry-thumbnail')

    if data == None:
        for i in range(len(imgs)):
            img_link = imgs[i]
            img = img_link.get('src')
            str_num = str(i)
            print(img)
            #download(img, str_num)

            pic = urllib.request.urlopen(img)
            name = '/Users/aipengya/Downloads/pictures_test/' + '(' + str(page) + ')' + str_num + '.jpg'
            f = open(name, 'wb')
            f.write(pic.read())
            f.close()

    print("Done!")

def get_more_pages(start, end):
    for page in range(start, end):
        url = 'http://weheartit.com/inspirations/taylorswift?scrolling=true&page={}'.format(page)
        get_page(url, page)
        time.sleep(2)


#def download(img, str_num):
#   file_name = path + str_num + '.jpg'
#   img_data = urllib.request.urlopen(img).read()
#   f = open(file_name, 'wb').write(img_data)
#   f.close()

get_more_pages(1, 3)

#main-container > div > div > div > div > div > a > img

3, 反思与总结

  • 代码中也要设代理,虽然目前还不清楚代理应该怎么设。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 173,885评论 25 709
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,080评论 19 139
  • 《生活》当欢笑淡成沉默,当信心变成失落,我走进梦想的脚步, 是否依旧坚定执着; 当笑颜流失在心的沙漠, 当霜...
    多多鲇鱼儿阅读 265评论 0 1
  • 1 不知道哪句话惹怒了杨儿。 本来正在为她庆祝。 杨儿出生在小县城,父母做一些小买卖。 本科是一所普通高校的二本,...
    爻夜阅读 832评论 0 2
  • 人有三种驱动力,第一种是生存需要,是一种动物的本能;第二种是奖励/惩罚,这是一种简单的用金钱、物质来刺激的驱动方式...
    荒原苍狼阅读 213评论 0 0