Python爬虫怎么循环截取html标签中间的内容?

html-css05

Python爬虫怎么循环截取html标签中间的内容?,第1张

如果是中间的数据直接就用bs4最简单

from bs4 import BeautifulSoup

#这里是请求过来的额数据处理,提取标签

html = BeautifulSoup(response.text, 'html.parser')

body = html.body       # 获取body部分数据

div = body.find("div",{'id','today'}) #用find去找div标签,id叫 today的标签里面的数据

就可以了

如果要提取标签内容比如value的值

div = body.find("input",id='hidden_title')['value']

方法一:利用css,其优点是内容可以为任何HTML元素,包括超链接和图片等,在IE6中还会在结尾自动显示省略号。缺点是必须指定宽度数值,并且宽度不能是百分数,否则在IE中会被认为是字符总长的百分比。如下例:

<div style="width:300pxoverflow:hidden text-overflow:ellipsiswhite-space:nowrap">任意长度的字符串 </div>

方法二:利用表单中的input,其优点是宽度可以设为百分数。但缺点是内容只能为纯文本,不能有超链接等内容。如下例

<input type=”text” style=”width:100% cursor:defaultborder-width:0border-style:none background-color:transparent” value=”任意长度的字符串” readonly/>

第一个要求

(?s)<P[^>]+>.+</P>(?-s)

你可以把P改成你任意想匹配的标签

第二个要求

<a[^>]+href="([^"]+)"\s*[^>]*>([^<]+)</a>

分组1是超链接地址,负责2是超链接的显示内容

取分组1可以用\1或者$1

取分组2可以用\2或者$2

具体使用\还是$,得看你的工具或者语言