Saya ingin mendapatkan tim lawan dari pertandingan satu tim bisbol hari ini.

Jadi saya mengkodekan ini.

Kode ini mendapatkan informasi permainan hari ini dari situs Web.

from bs4 import BeautifulSoup
import datetime
import urllib.request

req = urllib.request.Request("http://www.hanwhaeagles.co.kr/html/game/1st_schedule_list1.asp")
data = urllib.request.urlopen(req).read()

bs = BeautifulSoup(data, 'html.parser')

l = bs.find_all('div')
idx = 0

for s in l:
    try:
        prop = s.get('class')
        if prop != None and prop[0] == "box" and len(prop) == 2:
            l = s
            break
    except UnicodeEncodeError:
        print("Error")
    finally:
        idx += 1

print(l)

Dan 'variabel l' adalah informasi game hari ini.

Nilai alt img tag adalah nama tim lawan.

Saya ingin mencetaknya... Bantu saya

0
황준필 10 Agustus 2017, 12:24

2 jawaban

Jawaban Terbaik

Karena Anda lebih tertarik pada data yang ada di dalam kelas box. Anda dapat langsung mengekstrak kelas itu dan memprosesnya lebih lanjut:

from bs4 import BeautifulSoup
import datetime
import urllib.request

req = urllib.request.Request("http://www.hanwhaeagles.co.kr/html/game/1st_schedule_list1.asp")
data = urllib.request.urlopen(req).read()
bs = BeautifulSoup(data, 'html.parser')

for item in bs.select('.box'):
    team_name = item.find('img')['alt']
    print(team_name)

'NC'
'NC'
...
1
akash karothiya 10 Agustus 2017, 09:43
from bs4 import BeautifulSoup
import urllib.request

req = urllib.request.Request("http://www.hanwhaeagles.co.kr/html/game/1st_schedule_list1.asp")
data = urllib.request.urlopen(req).read()

bs = BeautifulSoup(data, 'html.parser')

table = bs.find('table')

for tr in table.find_all('tr'):
    for td in tr.find_all('td'):
        if td.find('img'):
            if 'alt' in td.find('img').attrs:
                print(td.find('img')['alt'])

Keluaran:

NC
NC
NC
KIA
KIA
KIA
두산
두산
삼성
삼성
넥센
넥센
SK
SK
NC
NC
롯데
롯데
KT
KT
KIA
KIA
SK
SK
LG
LG
KT
0
Dmitriy Fialkovskiy 10 Agustus 2017, 09:36