我正在构建网络爬虫,以便从网址获取当天的每日重要事件, 我的代码是:
import requests
from bs4 import BeautifulSoup
url = "http://www.tarihtebugun.gen.tr/?t=1"
# Get the latest link for the updated news:
try:
r = requests.get(url)
except Exception as err:
logging.error("Connect: {}, {}".format(err, url))
soup = BeautifulSoup(r.content, "html.parser")
soup = soup.find_all('td', class_='Maddeler')
olaylar = "Tarihte Bugünn"
for tarih, olay in zip(soup[0::2], soup[1::2]):
olaylar = olaylar + "{}-{}n".format(fx._b(tarih.get_text().strip()), olay.get_text().strip())
对于 HTML 行:
<td align='left' valign='top' class='Maddeler' Style='padding-right:3px;'><a href=http://www.tarihtebugun.gen.tr/türkiye.html />Türkiye</a> Tas Kömürü Kurumu Zonguldak'ta kuruldu.</td>
我得到
<td align='left' valign='top' class='Maddeler' Style='padding-right:3px;'><a href=http://www.tarihtebugun.gen.tr/türkiye.html />Türkiye</a></td>
美丽汤结果中缺少 URL 锚点后面的文本。 如果没有<a>
标签,那么它就可以正常工作。
我无法弄清楚问题出在哪里
多谢
不确定您想要什么作为输出(我在链接中根本没有看到该文本(。但是,如果你在表格之后,使用熊猫来抓取该表格可能更容易,那么你可以从数据帧中提取任何你想要的文本:
import pandas as pd
import requests
url = "http://www.tarihtebugun.gen.tr/?t=1"
# Get the latest link for the updated news:
try:
r = requests.get(url)
dfs = pd.read_html(r.text)
df_max = max([len(x) for x in dfs])
df = dfs[[i for i, j in enumerate(dfs) if len(j) == df_max][0]]
df = df.dropna(0, 'all')
df = df.dropna(1, 'all').reset_index(drop=True)
df.columns = df.iloc[0]
df = df.iloc[1:,:].reset_index(drop=True)
except Exception as err:
logging.error("Connect: {}, {}".format(err, url))
输出:全表
print (df)
0 Tarih Bilgi
0 14/05/1767 Ýngiliz hükümetinin ithal çaya vergi koymasý ü...
1 14/05/1924 Türkiye Taþ Kömürü Kurumu Zonguldak'ta kuruldu.
2 14/05/1946 Türkiye Sosyalist Partisi kuruldu. Baþkanlýða ...
3 14/05/1948 Ýsrail devleti kuruldu.
4 14/05/1950 27 yýllýk Cumhuriyet Halk Partisi iktidarý son...
5 14/05/1952 Paris'te toplanan Uluslararasý Basýn Enstitüsü...
6 14/05/1955 Sovyetler Birliði ve Doðu Avrupa'daki sosyalis...
7 14/05/1955 Nedret Gürcan, Dinar'da , Þairler Yapraðý adlý...
8 14/05/1957 Dr. Asým Onat Dünya Týp Cemiyeti baþkanlýðýna ...
9 14/05/1958 Ziya Ademhan 1 yýl hapse mahkum oldu.
10 14/05/1968 Üniversite öðrencileri "NATO'ya Hayýr" haftasý...
11 14/05/1974 12 Mart askeri müdahalesi sýrasýnda tutuklanan...
12 14/05/1984 Yaþar Kemal'in Ýnce Memed romanýný beyaz perde...
13 14/05/1985 Hüsamettin Cindoruk, Doðru Yol Partisi genel b...
14 14/05/1996 Ýstanbul Alibeyköy'de Ýrfan Aðdaþ adlý genç po...
15 14/05/1997 Türk Silahlý Kuvvetleri Kuzey Irak'a yönelik e...
16 14/05/1997 Danýþtay, Bargama köylülerinin siyanürle altýn...