(一)完善上次球赛数据:
代码如下:
def gameOver(a,b): if (a>=15 and abs(a-b)>=2) or (b>=15 and abs(a-b)>=2): return True else: return False try: c=gameOver() print(c) except: print("Error")
当输入值为(17,11)时输出True,比赛结束。当输入值为(13,11)时输出False,比赛继续。
(二)爬虫
接下来做的是访问搜狗网页20次,并记录下text等相关信息。
代码如下:
import requests for i in range(20): r=requests.get("https://baidu.com/") print(r.status_code) print(r.text) print(r.encoding) r.encoding = ‘utf-8‘ print(r.text) print(type(r.text)) print(type(r.content))
(三)、根据所给的html页面,保持为字符串,完成如下要求:
(1)打印head标签内容和你学号的后两位
(2)获取body标签的内容
(3)获取id的first的标签对象
(4)获取并打印html页面中的中文字符
from bs4 import BeautifulSoup r = ‘‘‘ <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>菜鸟教程(runoob.com)</title> </head> <body> <h1>我的第一个标题</h1> <p id="first">我的第一个段落。</p> </body> <table border="1"> <tr> <td>row 1, cell 1</td> <td>row 1, cell 2</td> </tr> </table> </html> ‘‘‘ demo = BeautifulSoup(r, "html.parser" ) print (demo.title) print (demo.body) print (demo.p) print (demo.string) |
效果如下:
<title>菜鸟教程(runoob.com)</title>
<body>
<h1>我的第一个标题</h1>
<p id="first">我的第一个段落。</p>
</body>
<p id="first">我的第一个段落。</p>
None
(四)、爬取中国大学排名(年费2016),将数据存为csv文件。
import requests
from bs4 import BeautifulSoup
ALL = []
def getHTMLtext(url):
try:
r = requests.get(url,timeout = 30)
r.raise_for_status()
r.encoding = ‘utf-8‘
return r.text
except:
return ""
def fillUni(soup):
data = soup.find_all(‘tr‘)
for tr in data:
td1 = tr.find_all(‘td‘)
if len(td1) == 0:
continue
Single = []
for td in td1:
Single.append(td.string)
ALL.append(Single)
def printUni(num):
print("{1:^2}{2:{0}^10}{3:{0}^6}{4:{0}^6}{5:{0}^6}{6:{0}^6}{7:{0}^6}{8:{0}^6}{9:{0}^5}{10:{0}^6}{11:{0}^6}{12:{0}^6}{13:{0}^6}".format(chr(12288),"排名","学校名称","省市","总分", "生源质量","培养结果","科研规模","科研质量", "顶尖成果","顶尖人才","科技服务", "产学研究合作","成果转化"))
for i in range(num):
u = ALL[i]
print("{1:^4}{2:{0}^10}{3:{0}^6}{4:{0}^8}{5:{0}^9}{6:{0}^9}{7:{0}^7}{8:{0}^9}{9:{0}^7}{10:{0}^9}{11:{0}^8}{12:{0}^9}{13:{0}^9}".format(chr(12288),u[0], u[1],u[2],eval(u[3]), u[4],u[5],u[6],u[7],u[8], u[9],u[10],u[11],u[12]))
def main(num):
url = "http://www.zuihaodaxue.com/zuihaodaxuepaiming2016.html"
html = getHTMLtext(url)
soup = BeautifulSoup(html,"html.parser")
fillUni(soup)
printUni(num)
main(10)
效果如下:
排名 学校名称 省市 总分 生源质量 培养结果 科研规模 科研质量 顶尖成果 顶尖人才 科技服务 产学研究合作 成果转化
1 清华大学 北京市 95.9 100.0 97.90% 37342 1.298 1177 109 1137711 1187 593522
2 北京大学 北京市 82.6 98.9 95.96% 36137 1.294 986 87 439403 799 7343
3 浙江大学 浙江省 80 88.8 96.46% 41188 1.059 803 86 959511 833 64392
4 上海交通大学 上海市 78.7 90.6 96.76% 40417 1.08 730 76 688607 909 104871
5 复旦大学 上海市 70.9 90.4 97.04% 25519 1.311 687 58 246736 534 2088
6 南京大学 江苏省 66.1 90.7 98.58% 20722 1.302 551 34 365202 239 5130
7 中国科学技术大学 安徽省 65.5 90.1 91.30% 18507 1.433 662 40 63767 228 658
8 哈尔滨工业大学 黑龙江省 63.5 80.9 94.32% 25249 0.932 478 22 1403251 379 4970
9 华中科技大学 湖北省 62.9 83.5 92.07% 23503 1.099 507 33 442079 482 11457
10 中山大学 广东省 62.1 81.8 93.45% 23837 1.19 464 46 147873 207 310
原文:https://www.cnblogs.com/w2538060594/p/12913481.html