ython通过findAll('h4')获取jin10网站的消息,jin10是一个财经资讯类网站
注意事项:本电脑环境是python 3.7
网页爬取数据的步骤:
1、导入相应的模块,例如request,BeautifulSoup等。 2、对网站进行请求 3、对网站HTML源代码进行解析 4、尝试打印所获取的数据
代码如下:
import requests from bs4 import BeautifulSoup import pandas as pd #1、网页请求 url="https://www.jin10.com/" #设置请求网址为jin10网站 response=requests.get(url) #对金十财经网站进行get请求并将请求结果赋值给response response.encoding='utf-8' #设置网页的编码为'utf-8' html=response.text #获取网页的html源代码并赋值给html #2、解析网站 #经查实发现所有的消息类信息都在h4标签里,故去获取h4标签数据 soup=BeautifulSoup(html,'lxml') #解析html网页的lxml代码,并赋值给soup content=soup.findAll('h4') #查找网页的h4标签 #3、遍历p标签数据 for msg in content: #遍历h4标签的内容 print(msg.text) #打印h4标签的内容,用text获取数据
代码运行结果如下图所示:
<html>
<head>
标题 ---此处放置标题、导航、登录等内容
<!此处放置标题、导航、登录等内容--->
</head>
<body>
<!此处放置页面主要内容--->
<! :空格
<: 小于号
>: 大于号
": 引号--->
<p>第一段 世界大势,合久必分,分久必合。</p>
<hr/> <!表示单行横线显示--->
<br/> <!表示换行--->
<h1> hello world, html is easy</h1>
<h2> hello world, html is easy</h2>
<h3> hello world, html is easy</h3>
<h4> hello world, html is easy</h4>
<h5> hello world, html is easy</h5>
<h6> hello world, html is easy</h6>
<p>普通字体</p>
<b>粗体</b> <i>斜体</i> <del>本文字已被删除,请忽略</del>
<p> hello world</p> <!段落标记--->
<a href="http://www.baidu.com" target="_self"> 点击进入百度</a>
<br/>
<img src="http://mysite.com/mypic.png" alt="网站作者照片">
<h3> 普通无边框表格:</h3>
<table>
<tr>
<td>row 1 cell 1</td> <td>row 1 cell 2</td> <td>row 1 cell 3</td>
</tr>
<tr>
<td>row 2 cell 1</td> <td>row 2 cell 2</td> <td>row 2 cell 3</td>
</tr>
</table>
<h3>带表头,有边框,有跨列单元:</h3>
<table border="1">
<tr>
<th>head1</th> <th>head2</th> <th>head3</th>
</tr>
<tr>
<td>row 1 cell 1</td> <td>row 1 cell 2</td> <td>row 1 cell 3</td>
</tr>
<tr>
<td>row 2 cell 1</td> <td>row 2 cell 2</td> <td>row 2 cell 3</td>
</tr>
</table>
<h3>三种列表的表达方式:</h3>
<table cellpadding="2" cellspacing="2">
<tr>
<td>
<ul><li>python</li> <li>c++</li> <li>java</li> <li>golang</li></ul>
</td>
<td>
<ol><li>python</li> <li>c++</li> <li>java</li> <li>golang</li></ol>
</td>
</tr>
</table>
<dl>
<dt>CPU</dt><dd>处理器</dd>
<dt>MEM</dt><dd>内存</dd>
</dl>
<body bgcolor="#FF0000">
<body bgcolor="RGB(255,0,0)">
<body bgcolor="RED">
<p>视频</p>
<object
classid="clsid:d27sfsfstqwetsasasdfsdfs"
codebase="http://fpdownload.macromedia.com/pub/shckwave/cabs/flash/swflash.cab">
<embed src="flashfile.swf" width="300" height="200"></embed>
</object>
<br/>
<p>音频</p>
<audio controls="crontrols">
<source src="sample_song.mp3" type="audio/mp3" />
</audio>
<br/>
<p>视频</p>
<video controls="controls"/>
<source src="sample_video.mp4" type="video/mp4">
</video>
<p>html表单---文本输入</p>
<table>
<tr>
<td>用户名:</td>
<td><input type="text" name="name"></td>
<td>密码:</td>
<td><input type="password" name="pass"></td>
</tr>
<tr>
<tdcolspan="4"> <textarea name="comment" rows="5" cols="60"> </textarea></td>
</tr>
</table>
<table>
<tr>
<td>性别:</td>
<td>用户名:</td>
<td>男性<input type="radio" checked='checked' name="sex" value="male" /></td>
<td>女性<input type="radio" checked='checked' value="female" /></td>
</tr>
<tr>
<tdcolspan="4"> <textarea name="comment" rows="5" cols="60"> </textarea></td>
</tr>
</table>
</body>
</html>
篇介绍了html 中文本格式及段落等标签,今天说下列表,什么是列表?它就是一种数据排列方式,以条列式的方式显示文本,使读者一目了然。列表主要有以下三种:
无序列表在每行开始位置显示一个符号,语法如下:
<html>
<body>
<h4>一个无序列表:</h4>
<ul>
<li>咖啡</li>
<li>茶</li>
<li>牛奶</li>
</ul>
</body>
</html>
显示效果:
无序列表的符号可以通过在ul 标签上设置 type 属性显示不同的符号,比如:
1、disc —— 实心圆点 (默认类型)
2、circle —— 空心圆圈
3、square —— 实心方块
实例代码:
<html>
<body>
<h4>一个无序列表:</h4>
<ul type="disc">
<li>咖啡</li>
<li>茶</li>
<li>牛奶</li>
</ul>
<h4>一个无序列表:</h4>
<ul type="circle">
<li>咖啡</li>
<li>茶</li>
<li>牛奶</li>
</ul>
<h4>一个无序列表:</h4>
<ul type="square">
<li>咖啡</li>
<li>茶</li>
<li>牛奶</li>
</ul>
</body>
显示效果:
有序列表使用数字或字母符号排列,表示文本按一定顺序显示,语法如下:
<!DOCTYPE html>
<html>
<body>
<ol>
<li>咖啡</li>
<li>牛奶</li>
<li>茶</li>
</ol>
</body>
</html>
效果如下:
同无序列表一样,在ol上通过type 属性设置使用那种符号表示顺序,有以下几种:
1、1,表示数字 1、2、3..... (默认数字)
2、a,表示小写字母 a、b、c....
3、A,表示大写字母 A、B、C ....
4、i,表示小写罗马字母 i、ii、iii、iv....
5、I,表示大写罗马字母 I、II、III、IV....
显示效果如下:
html代码:
<!DOCTYPE html>
<html>
<body>
数字
<ol type="1">
<li>咖啡</li>
<li>牛奶</li>
<li>茶</li>
</ol>
小写字母
<ol type="a">
<li>咖啡</li>
<li>牛奶</li>
<li>茶</li>
</ol>
大写字母
<ol type="A">
<li>咖啡</li>
<li>牛奶</li>
<li>茶</li>
</ol>
小写罗马字母
<ol type="i">
<li>咖啡</li>
<li>牛奶</li>
<li>茶</li>
</ol>
大写罗马字母
<ol type="I">
<li>咖啡</li>
<li>牛奶</li>
<li>茶</li>
</ol>
</body>
</html>
有序列表还可以通过start 属性设置起始数组,如下:
<ol start="3">
<li>咖啡</li>
<li>牛奶</li>
<li>茶</li>
</ol>
显示效果:
不同以上2种列表,定义列表主要用来解释名词,由2种层次列表显示,第一层是被解释的名词,第二层是详细地解释文字,语法如下:
<html>
<body>
<h2>一个定义列表:</h2>
<dl>
<dt>计算机</dt>
<dd>用来计算的仪器 ... ...</dd>
<dt>显示器</dt>
<dd>以视觉方式显示信息的装置 ... ...</dd>
</dl>
</body>
</html>
显示效果:
第一行<dt>是要解释的名词,第二行标签<dd>是解释文本,会自动缩进。
以上三种列表是可以嵌套使用的,看如下示例:
<html>
<body>
<h4>一个嵌套列表:</h4>
<ul>
<li>咖啡</li>
<li>茶
<ul>
<li>红茶</li>
<li>绿茶</li>
</ul>
</li>
<li>牛奶</li>
</ul>
</body>
</html>
效果:
每嵌套一层,它的符号是不一样的,你可以试试再嵌套一层看看效果。
当然,不同列表类型也可互相嵌套,根据显示效果可以自由使用,一般建议不要这样使用,不同类型列表显示在一块不是很美观。如下面无序列表中嵌套有序列表:
<html>
<body>
<h4>一个嵌套列表:</h4>
<ul>
<li>咖啡</li>
<li>茶
<ul>
<li>红茶</li>
<li>绿茶
<ol>
<li>中国茶</li>
<li>非洲茶</li>
</ol>
</li>
</ul>
</li>
<li>牛奶</li>
</ul>
</body>
</html>
效果如下:
列表是网页制作中经常会使用的标签,比如在制作网页导航栏菜单时会经常用到ul列表,以后会讲如何通过ul标签制作一个下拉菜单,感谢您阅读及关注,祝你学习愉快。
上篇:前端入门——html 文字格式、标题与段落
下篇:前端入门——html 超链接
*请认真填写需求信息,我们会在24小时内与您取得联系。