soup.find('iteminfo', {'floatvalue'}
时间: 2023-09-13 08:05:35 浏览: 77
您的代码有误,应该使用 soup.find('iteminfo')['floatvalue'] 来获取 floatvalue 的值。完整代码如下:
```python
import requests
from bs4 import BeautifulSoup
url = 'http://example.com'
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
floatvalue = soup.find('iteminfo')['floatvalue']
print(floatvalue)
```
请注意,这个代码仅适用于响应体是 XML 或 HTML 的情况。如果您的响应体是 JSON 格式的,则需要使用 `response.json()` 方法将其转换为 Python 对象,然后再提取 `floatvalue` 属性的值。
相关问题
soup = BeautifulSoup(response.text, 'html.parser') # 找到特定的标签或者CSS选择器 # 打印提取的数据 floatvalue_tag = soup.find('iteminfo') if floatvalue_tag: data = floatvalue_tag.text print(data) else: print('未找到 floatvalue 标签')
这段代码是使用BeautifulSoup从response.text中解析HTML文本,并查找特定的标签或CSS选择器。
首先,使用BeautifulSoup将HTML文本解析成一个BeautifulSoup对象,然后使用find方法查找名为'iteminfo'的标签。如果找到了该标签,则提取该标签中的文本内容并打印;否则打印未找到该标签的信息。
需要注意的是,'iteminfo'可能是一个自定义标签,如果在HTML文本中未找到该标签,可以根据HTML文档结构和实际情况找到对应的标签或CSS选择器。另外,如果要查找多个标签,可以使用find_all方法。
import requests from bs4 import BeautifulSoup url = 'https://movie.douban.com/subject/30228394/' header = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)\ AppleWebKit/537.36 (KHTML, like Gecko) Chrome/114.0.0.0 Safari/537.36'} response = requests.get(url=url, headers=header) soup = BeautifulSoup(response.text, 'html.parser') tv_infor = {} # 1.获取电视剧名称 name = soup.find(property="v:itemreviewed").string # 根据属性property="v: "查找 tv_infor['name'] = name # 将电影名称加到字典tv_infor中 # 2.获取导演 director = soup.find(rel="v: directedBy").string # 根据属性re1="v:directedBy“查找 tv_infor['director'] = director # 3.获取编剧 soup_list = soup. findAll(class_="attrs")[1].findAll('a') writers = [elem. string for elem in soup_list] tv_infor['writers'] = writers # 4.获取演员 soup_list = soup. findAll(rel="v:starring") actors = [elem. string for elem in soup_list] tv_infor['actors'] = actors # 5.获取类型 soup_list = soup. findAll(property="v: genre") tv_type = [elem. string for elem in soup_list] tv_infor['type'] = tv_type # 6.首播时间 release_date = soup.find(property="v: initialReleaseDate").string tv_infor['release_date'] = release_date # 7.豆瓣评分 rating = soup.find(property="v: average").string tv_infor['rating'] = rating # 8.参评人数 votes = soup.find(property="v: votes").string tv_infor['votes'] = votes print("电视剧《觉醒年代》相关信息如下:") for key, value in tv_infor.items(): print(key, ":", value)
这段代码实现了爬取豆瓣电视剧《觉醒年代》的相关信息并存储在一个字典中。具体的实现过程如下:
1. 引入requests和BeautifulSoup模块,并定义目标url和请求头。
2. 发送请求获取响应,并使用BeautifulSoup解析响应的html文本。
3. 根据html结构和标签属性,使用find()和findAll()方法来定位需要的信息。
4. 将获取到的信息存储在一个字典中,键为信息的名称,值为信息的内容。
5. 最后使用for循环遍历字典,并按照指定格式输出信息。
需要注意的是,在使用BeautifulSoup解析html文本时,需要指定解析器类型,这里使用的是'html.parser'。在实际使用中,可能需要根据不同的网站和html结构来选择不同的解析器类型。
阅读全文
相关推荐

















