小爬虫

爬虫一般在网页Post里找数据,注意大部分网页都已经反爬,会出现主要对象加密的问题,比如百度翻译就影藏了输入的内容,有道翻译进行了MD5加密,不过广大网友是给力,只要把网址里的_o去掉就又可以了

参考小甲鱼的实例,我试着爬了下百度贴吧的图片,还挺方便.

import urllib.request
import re

def open_url(url):
    req=urllib.request.Request(url)
    req.add_header('User-Agent','Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36')
    page= urllib.request.urlopen(req)
    html =page.read().decode('utf-8')

    return html

def get_img(html):
    p=r'<img class="BDE_Image" src="([^"]+\.jpg)"'  #findall会自动找出( )内的内容
    imglist=re.findall(p,html)

#for each in imglist:
#print(each)
    for each in imglist:
        filename=each.split('/')[-1]    #把要存储的文件名分割出来
        urllib.request.urlretrieve(each,filename,None)


if __name__=='__main__':
    url = 'https://tieba.baidu.com/p/6055466318'
    get_img(open_url(url))

猜你喜欢

转载自www.cnblogs.com/009NotFound/p/10495258.html
今日推荐