欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Python 简单网络爬虫

程序员文章站 2022-03-02 22:48:25
...
import urllib.request as  ub
import re

#输出网页源代码
def get_html(url):

     page = ub.urlopen(url)
     html = page.read()
     return html

def get_image(html_code):
    # 接着我们要做的就是从get_html方法返回的辣么长一串字符串中拿到满足正则表达式的 字符串。
    reg = r'src="(.+?\.jpg)" width'  # 正则表达式
    reg_img = re.compile(reg)  # 编译一下,运行更快
    imglist = reg_img.findall(html_code)  # 进行匹配
    # 下载图片
    x = 0
    for img in imglist:
        ub.urlretrieve(img, '../image/pC/%s.jpg' % x)
        x += 1

if __name__ == "__main__":
    #注意'if __name__ == "__main__":'后的语句应该缩进
    print(u'-------网页图片抓取-------')
    while(1):
        url = input('请输入url:')
        if url:
            print(u'----------正在获取网页---------')
            html_code = get_html(url).decode('utf-8')
            print(u'----------正在下载图片---------')
            get_image(html_code)
            print(u'----------下载成功-------------')
        else:
            print(u'输入地址不正确!')
        url1 = input("退出请输入q,继续输入任意键")
        if url1 == 'q' :
            break

参考:https://www.cnblogs.com/Axi8/p/5757270.html