当前位置: 首页 > news >正文

广州网站建设加q.479185700在邯郸开互联网公司

广州网站建设加q.479185700,在邯郸开互联网公司,惠州seo计费管理,柳州房地产网站建设##通过一个中国大学大学排名爬虫的示例进行基础性理解 以软科中国最好大学排名为分析对象#xff0c;基于requests库和bs4库编写爬虫程序#xff0c;对2015年至2019年间的中国大学排名数据进行爬取#xff1a;#xff08;1#xff09;按照排名先后顺序输出不同年份的前10…##通过一个中国大学大学排名爬虫的示例进行基础性理解 以软科中国最好大学排名为分析对象基于requests库和bs4库编写爬虫程序对2015年至2019年间的中国大学排名数据进行爬取1按照排名先后顺序输出不同年份的前10位大学信息并要求对输出结果的排版进行优化访问的网址https://www.shanghairanking.cn/rankings/bcur/2021 ##网络爬虫定义 Python语言的简洁性和脚本特点非常适合链接和网页处理。 爬虫首先要做的工作就是获取网页这里就是获取网页的源代码。 源代码里包含了网页的部分有用信息所以只要把源代码获取下来就可以从中提取想要的信息了。 前面讲了请求和响应的概念向网站的服务器发送一个请求返回的响应体便是网页源代码。 ##基本的操作步骤 A通过网络链接获取网页的内容 B对获得到的网页内容进行处理 ##所涉及到的库 ##最主流的两个函数库requests和beautifulsoup4 ##requests库的使用 该库是一个简洁且简单的处理HTTP请求的第三方库最大优点是程序编写过程更接近正常URL的访问过程。 ##beautifulsoup4库的使用 使用requests库获取HTML页面并将其转换成字符串后需要进一步解析HTML页面格式提取有用的信息。 ##Robots协议 Robots 排除协议(Robots Exclusion Protocol) 也被称为爬虫协议它是网站管理者表达是否希望爬虫自动获取网络信息意愿的方法。管理者可以在网站根目录放置一个 robots.txt文件并在文件中列出哪些链接不允许爬虫爬取。一般搜索引擎的爬虫会首先捕获这个文件并根据文件要求爬取网站内容。Robots排除协议重点约定不希望爬虫获取的内容如果没有该文件则表示网站内容可以被爬虫获得然而Robots协议不是命令和强制手段只是国际互联网的一种通用道德规范。绝大部分成熟的搜索引擎爬虫都会遵循这个协议建议个人也能按照互联网规范要求合理使用爬虫技术。 一般来说不允许访问的网址相应的网址会进行对应的加密操作。 ##代码示例 网络爬虫代码示例 import requests from bs4 import BeautifulSoup import bs4 #用来获取网页html def getHTMLText(url):try:r requests.get(url, timeout30)r.raise_for_status()r.encoding r.apparent_encodingreturn r.textexcept:return #将对应的网页用python中对应的数据结构进行存储 def fillUnivList(ulist, html):soup BeautifulSoup(html, html.parser)#BeautifulSoup的一个对象for tr in soup.find(tbody).children:if isinstance(tr, bs4.element.Tag):#bs4.element.Tag用来访问html指定的元素标签a tr(a)tds tr(td)ulist.append([tds[0].text.strip(), a[0].text.strip(), tds[4].text.strip()])#strip()函数用来去除对应的字符#print(ulist)#及逆行格式设置用来设置美观的打印格式 def printUnivList(ulist, num):tplt {0:^5}\t{1:{3}^15}\t{2:^5}print(tplt.format(排名, 学校名称, 学校总分, chr(12288)))for i in range(num):u ulist[i]print(tplt.format(u[0], u[1], u[2], chr(12288)))print(suc str(num)) 由于大学名称的被a标签包含所以我们可以定义一个列表存放a标签中的内容与td标签进行区分开来 为了视觉方面更加美观可采用中文字符的空格填充chr(12288),目的是为了对齐def main():uinfo []url https://www.shanghairanking.cn/rankings/bcur/2021html getHTMLText(url)fillUnivList(uinfo, html)printUnivList(uinfo, 10)main() ##代码的运行结果 访问网址的源码示例 ##网络爬虫的一个自我小小误区 由于部分的网页的访问收到服务器的拒绝因此通过自己制作网页来进行对应的访问但是在这里忽略了一个特别重要的问题自己所编写的网页并没有受到对应的服务器链接只是一个单纯的html文件因此我们的处理方法改成了访问html文件然后利用request库beautifulsoup4库进行处理。 真正的网址需要受到服务器的请求的处理才可以进行解析 ##test.html源文件代码 !DOCTYPE html htmlheadmeta charsetutf-8title/title/headbodytable border1 caption大学排名/captiontrtd排名/tdtd学校名称/tdtd省市/tdtd总分/tdtd培养规模/td/trtrtd1/tdtd清华大学/tdtd北京市/tdtd95.9/tdtd37342/td/trtrtd2/tdtd北京大学/tdtd北京市/tdtd82.6/tdtd36317/td/trtrtd3/tdtd浙江大学/tdtd浙江省/tdtd80/tdtd41188/td/trtrtd4/tdtd上海交通大学/tdtd上海市/tdtd78.7/tdtd40417/td/trtrtd5/tdtd复旦大学/tdtd上海市/tdtd70.9/tdtd25519/td/trtrtd6/tdtd南京大学/tdtd江苏省/tdtd66.1/tdtd20072/td/trtrtd7/tdtd中国科学技术大学/tdtd安徽省/tdtd65.5/tdtd18507/td/trtrtd8/tdtd哈尔冰工业大学/tdtd黑龙江省/tdtd63.5/tdtd25249/td/trtrtd9/tdtd华中科技大学/tdtd湖北省/tdtd62.9/tdtd23503/td/trtrtd10/tdtd中山大学/tdtd广东省/tdtd62.1/tdtd23837/td/tr/table/body /html ##效果显示图 ##网页中显示的源码 ##以文件形式处理的代码示例 网络爬虫 import requests from bs4 import BeautifulSoup alluniv []def fillluniv(soup):data soup.find_all(tr)for tr in data:ltd tr.find_all(td)if len(ltd) 0 :continueoneuniv []for td in ltd :oneuniv.append(td.string)alluniv.append(oneuniv)# print(alluniv)def printUniv(num):print({:^4}{:^10}{:^5}{:^8}{:^10}.format(排名,学校名称,省市,总分,培养规模))for i in range(1,num1):print({:^4}{:^10}{:^5}{:^8}{:^10}.format(alluniv[i][0],alluniv[i][1],alluniv[i][2],alluniv[i][3],alluniv[i][4])) with open(test.html,r,encodingutf-8) as file:content file.read()soup BeautifulSoup(content,html.parser) fillluniv(soup) printUniv(10) ##代码的运行结果
http://www.dnsts.com.cn/news/222258.html

相关文章:

  • 做dapp开发广州沈阳seo推广
  • 网站托管内容wordpress xml rpc
  • 网站建设 概念购物网站的设计思路
  • 服务好的扬中网站优化网站辅导运营与托管公司
  • 静态网站建设的流程什么博客可以做网站
  • 洛阳网站建设设计公司哪家好网络维护网站美工
  • 睿艺美开封做网站外贸网站cms
  • 典当网站山东外贸国际网站建设
  • 中国网站制作 第一个作品集的个人网站怎么做
  • 网站转应用酒店推广平台有哪些
  • 网站代备案公司名称网站输入字符 显示出来怎么做
  • 网站服务器有哪些类型有哪些类型有哪些类型有哪些google网页搜索
  • 网站开发说明养生网站建设免费
  • 做搜狗pc网站软件国内seo服务商
  • 新的seo网站优化排名 网站聊城做网站的公司渠道
  • 电商网站英文品牌网站大全
  • 苗木网站模板简单的logo设计
  • 做网站月薪资多少钱WordPress二维码动态图片
  • 做网站需要什么权限代理网页浏览器
  • 自己做网站挂广告建设企业和建筑企业
  • 企业为什么做网站素材申请注册邮箱163免费注册
  • 慈溪哪里有做网站wordpress能开发商城网站吗
  • 建设银行怎么招聘网站网站建设是怎么收费的
  • 做网站开发背景中移建设 公司 网站
  • 临沧市建设局网站职业生涯规划大赛官网
  • 福建移动网站设计实木餐桌椅移动网站建设
  • wap站点深圳创纪录暴雨19小时
  • 海南中小企业网站建设做太空泥的几分钟网站
  • 西安网站建设设计iis做的网站如何添加播放器
  • 网站设计制作的连接方式app制作开发小程序制作开发