#python爬虫的系统学习1
from bs4 import BeautifulSoup
import requests
import re #正则表达式
import urllib.request,urllib.error
import xlwt
import sqlite3
findlink=re.compile(r'<a herf="(.*?)">')
def spider():
testurl="https://movie.douban.com/top250?start=0&filter="
datalist=getData(testurl)
#爬取网页,获取数据
#解析数据
#保存数据
#askUrl(testurl)
savepath="F:/pythoncunchu/top250.xls"
def getData(baseurl):
datalist=[]
for i in range(0,1):
url=baseurl+str(i*25)
html=askUrl(url)
bs=BeautifulSoup(html,'html.parser')
for item in bs.find_all('div',class_='item'): #查找符合要求的字符串,返回列表,class_表示class属性
data=[]#保存一部
item=str(item)
print(item)
return datalist
def saveData(path):
pass
#获取网页
def askUrl(url):
head={
"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36 Edg/95.0.1020.30"
}#爬虫伪装成浏览器
newurl=urllib.request.Request(url,headers=head)#将链接封装一下,把爬虫伪装成浏览器,换成了一个新的链接
html=""#记录下链接获取到的网页
try:
rep=urllib.request.urlopen(newurl)#打开链接,返回网页
html=rep.read().decode('utf-8')#再将网页解析,变成utf-8文件
#print(html)
except urllib.error.URLError as e:
if hasattr(e,'code'):
print(e.code)
if hasattr(e,'reason'):
print(e.reason)
return html
if __name__=="__main__":
spider()
标签:__,练习,html,urllib,爬取,item,豆瓣,print,import
From: https://www.cnblogs.com/tgfoven/p/17105373.html