Rumah > Soal Jawab > teks badan
import requests
res=requests.get('http://news.sina.com.cn/china/')
res.encoding="utf-8"
from bs4 import BeautifulSoup
soup=BeautifulSoup(res.text,'html.parser')
a=soup.select('a')
for i in a:
print (i[href])
Saya ingin mengeluarkan URL bagi setiap pautan, tetapi kod di atas menghasilkan
Ralat: cetak (i[href])
NameError: nama 'href' tidak ditakrifkan
巴扎黑2017-05-24 11:37:29
Pertama sekali, kunci kamus memerlukan petikan, print(i['href'])
你可以用 print(i.get('href')
,防止找不到这个元素的时候报 KeyError
print(i.get('href')
untuk mengelakkan KeyError
daripada dilaporkan apabila elemen ini tidak ditemui. https://docs.python.org/3/lib...🎜
仅有的幸福2017-05-24 11:37:29
import requests
from bs4 import BeautifulSoup
res = requests.get('http://news.sina.com.cn/china/')
res.encoding = "utf-8"
soup = BeautifulSoup(res.text, 'html.parser')
a = soup.select('a')
for i in a:
try:
href = i['href']
if 'http' in href:
print(href)
except KeyError:
continue
Satu cadangan: Apabila bertanya soalan, cuba nyatakan keraguan anda. Perkara utama yang anda maksudkan di sini ialah anda tidak menambah petikan tunggali['href']