import requests from bs4 import BeautifulSoup import lxml headers = { "User-Agent": "Mozilla/5.0 (Macintosh; Intel)" } for start_name in range(0, 250, 25): res = requests.get(f"https://book.douban.com/top250?start=", headers=headers) print(res.status_code) soup = BeautifulSoup(res.text, 'lxml') t1 = soup.findAll('div', attrs={'class': 'pl2'}) for i in t1: t2 = i.find('a') print(t2) break;去除输出<a>中的空格
时间: 2023-06-19 16:03:24 浏览: 347
可以在输出 t2 之前使用 strip() 方法去除字符串两端的空格,例如:
```python
for start_name in range(0, 250, 25):
res = requests.get(f"https://book.douban.com/top250?start={start_name}", headers=headers)
print(res.status_code)
soup = BeautifulSoup(res.text, 'lxml')
t1 = soup.findAll('div', attrs={'class': 'pl2'})
for i in t1:
t2 = i.find('a').text.strip() # 去除<a>标签中的空格
print(t2)
break
```
这样输出的 t2 就不会包含空格了。
相关问题
统计下列代码中info中的数据个数import requests from bs4 import BeautifulSoup headers={'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 Edg/114.0.1823.41'} url='https://www.ibiquges.com/xiaoshuodaquan/' strhtml=requests.get(url,headers=headers) soup=BeautifulSoup(strhtml.text,'lxml') info=soup.select('#main > div:nth-child(1) > ul') count=0 for item in info: print(item.get_text()) count=count+1 print(count)
根据给出的代码,我们可以看到从指定的网站中获取到页面的 HTML 代码,并使用 BeautifulSoup 库进行解析。接着使用 CSS 选择器定位到 id 为 "main" 的元素的第一个子元素 ul,并将其赋值给变量 info。最后使用 for 循环遍历 info 中的每个元素,并打印元素的文本内容,同时累加计数器 count 的值。因此,info 中的数据个数取决于网站中 id 为 "main" 的元素的第一个子元素 ul 中的数据个数。无法确定具体的数据个数。
下列代码中统计id为 "main" 的元素的第一个子元素 ul下的元素个数import requests from bs4 import BeautifulSoup headers={'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 Edg/114.0.1823.41'} url='https://www.ibiquges.com/xiaoshuodaquan/' strhtml=requests.get(url,headers=headers) soup=BeautifulSoup(strhtml.text,'lxml') info=soup.select('#main > div:nth-child(1) > ul') for item in info: print(item.get_text())
可以使用 Python 的内置函数 len() 统计 id 为 "main" 的元素的第一个子元素 ul 下的元素个数。代码如下:
```
import requests
from bs4 import BeautifulSoup
headers = {'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 Edg/114.0.1823.41'}
url = 'https://www.ibiquges.com/xiaoshuodaquan/'
strhtml = requests.get(url, headers=headers)
soup = BeautifulSoup(strhtml.text, 'lxml')
info = soup.select('#main > div:nth-child(1) > ul')
count = len(info[0].find_all('li'))
print(count)
```
首先,我们使用 len() 函数统计了 info 列表中第一个元素中的 li 元素的个数,并将结果赋值给变量 count。其中,find_all() 方法返回一个列表,其中包含所有匹配的元素。接着使用 print() 函数打印结果即可。
阅读全文