由于断断续续的学习python,知识整理不够系统,一点一点堆积学习脚印吧。
昨天想着做一个小爬虫下载一下图片什么的,然后就找了点资料做了这个demo。
1.创建python程序
用编译器创建一个程序即可,我这里用的是pycharm
2.创建py文件,开始撸代码
#引入的包
# -*- coding: UTF-8 -*-
import urllib
import urllib.request
import re
如果你的环境没有集成request,使用命令pip install requests进行下载安装或者搜索一下进行下载安装,安装完成之后如果还有报错注意配置一下开发环境,步骤如下
还需要配置
#获取html
def loadPage(url,filename):
request = urllib.request.Request(url)
html1 = urllib.request.urlopen(request).read()
return html1.decode('utf-8')
#写入本地
def writePage(html,filename):
with open(filename,'w')as f:
f.write(html)
#负责处理每一个页面url
def tiebaSpider(url,beginPage,endPage):
for page in range(beginPage,endPage+1):
pn = (page -1)*50
fullurl = url+"&pn"+str(pn)
print (fullurl)
filename ='第' +str(page) +'页.html'
html = loadPage(url,filename)
writePage(html,filename)
getImg(html)
#下载图片
def getImg(html):
reg =r'src="(http://imgsrc.*?\.jpg)"'
imgre = re.compile(reg)
imglist = re.findall(imgre,html)
x =0
for imgurl in imglist:
urllib.request.urlretrieve(imgurl,'%s.jpg' % x)
x+=1
print ('*' *30)
#入口函数
if __name__ =="__main__":
kw =input('请输入你需要爬取的贴吧名:')
beginPage =int(input('请输入起始页'))
endPage =int(input('请输入结束页'))
url ='https://tieba.baidu.com/f?'
kwl = {'kw':kw}
key = urllib.parse.urlencode(kwl)
fullurl = url+key
tiebaSpider(fullurl,beginPage,endPage)
然后就美滋滋的看图吧,链接可以换成你想要的其他链接,但是要注意分析html中的元素。需要一点点前端知识,可以自行查询资料或者一起交流讨论哈
菜鸟走向大牛,大家共同前进,如果觉得不错,请给个赞/关注。
一起交流学习,有问题随时欢迎联系,邮箱:383708669@qq.com