我試圖從這個頁面上抓取資料https://www.flashscore.pl/druzyna/ajax/8UOvIwnb/tabela
Q1:我創建了這段代碼,但我不知道如何僅為 AJAX 團隊提取資料。資料將保存為串列。稍后它們將被保存到 csv 檔案中。另外,我不感興趣,例如符號“?” 如何排除它?我會很感激你的幫助。
Q2:我如何分離“AJAX”的anserw,例如用“;” 阿賈克斯;18;13;3;2;56:4;42;?;W;W;P;W;W;
代碼
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from bs4 import BeautifulSoup as BS
import requests
from time import sleep
driver = webdriver.Chrome()
driver.get("https://www.flashscore.pl/druzyna/ajax/8UOvIwnb/tabela/")
sleep(10)
page = driver.page_source
soup = BS(page,'html.parser')
content3 = soup.find('div',{'class':'ui-table__body'})
content_list3 = content.find_all('div',{'class':'tableCellFormIcon tableCellFormIcon--TBD'})
for i in content3:
print(i.text.split()[0])
結果
1.PSV18141346:2443?WWWWR
2.Ajax18133256:442?WWPWW
3.Feyenoord18123342:1739?WPRWW
4.Vitesse18103525:2533?WRWWR
5.Alkmaar18102635:2332?WWWWW
6.Twente1895428:2232?RWWWR
7.Utrecht1885533:2329?RRRPW
8.Cambuur1891832:3928?RPWPW
9.Nijmegen1874724:2625?WWPPP
10.Heerenveen1874720:2525?PWRWR
11.G.A.
12.Groningen1847720:2719?PPRRW
13.Heracles18531021:2618?RWPPP
14.Willem
15.Waalwijk1837819:3016?RPPWR
16.Sparta
17.Sittard18341119:4613?PRWPP
18.Zwolle1813149:326?PPPRR
uj5u.com熱心網友回復:
您可以將其添加到串列中:
res = []
for i in content3:
line = i.text.split()[0]
print(line)
res.append(line)
https://docs.python.org/3/tutorial/datastructures.html -
list.append(x) 將一個專案添加到串列的末尾。等價于 a[len(a):] = [x]。
替換“?”添加這個:
line = line.replace("?", "")
https://docs.python.org/3/library/stdtypes.html#str.replace -
str.replace(old, new[, count]) 回傳字串的副本,其中所有出現的子字串 old 都替換為 new。如果給定了可選引數 count,則僅替換第一個 count 出現。
檢查行是否包含“Ajax”:
if "Ajax" in line:
print(line)
uj5u.com熱心網友回復:
添加正則運算式并排序“Ajax”:
import re
res = []
for i in content3:
line = i.text.split()[0]
if re.search('Ajax', line):
line = line.replace("?", "")
res.append(line)
print(res)
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/409795.html
標籤:
上一篇:無法在pytest中運行測驗用例
