在學習了Python課程后,我正在嘗試制作網頁抓取器。
我在理解網頁的結構方面有一個問題。
為了制作一個頁碼的串列,我需要從網頁中提取整數。但是,現在網頁的結構已經改變了。
每個數字都在 我試著用: 但我不能得到一個正確的結果。
如果有任何想法,請幫助我。
謝謝你 uj5u.com熱心網友回復: 要想從頁面導航中獲得數字,你可以使用下一個例子: 印刷品:
標籤:<li>中,但每個數字的標記方式不同。
例如,Interger 1在<b>標簽中,其他的在<a>標簽中。
在這種情況下,哪種方式是用一行代碼提取這些互斥的最佳方式?
pagination = indeed_soup.find("ul"/span>, {"class"/span>: "pagination-list"})["ria-label"]
pagination = indeed_soup.find("ul"/span>, {"class"/span>: "pagination-list"}).get_text

import requests
from bs4 import BeautifulSoup
url = "https://es.indeed.com/ofertas? as_and=python&as_phr=&as_any=&as_not=&as_ttl=&as_cmp=&jt=all&st=&salary=&radius=25&;l=España&;fromage=any&;limit=50&; sort=&;psf=advsrch&; from=advancedsearch"
soup = BeautifulSoup(requests.get(url).content, "html.parser")
print(
int(t)
for li in soup.select(" .pagination-list li")
if (t := li.get_text(strip=True)
]
)
[1, 2, 3, 4, 5] 。
