我正在尝试从这个网站https://www.x-rates.com/calculator/?from=GBP&to=USD&amount=1抓取一个网页,以获取英镑到美元的转换率。
我已经在上面链接的HTML中将转换率的类标识为“ccOutputRslt”,但是当打印被删除的内容时,返回给我的内容为:
<span class="ccOutputRslt">1.338<span class="ccOutputTrail">241</span><span class="ccOutputCode"> USD</s
pan></span>
如何从代码中删除标签,以及删除class =“ccOutputCode”中包含的字符串“USD”,以便打印的内容将是浮动“1.338241”,因此可以进行转换。
这是我文件的python代码:
import requests
from bs4 import BeautifulSoup
page = requests.get('https://www.x-rates.com/calculator/?from=GBP&to=USD&amount=1')
soup = BeautifulSoup(page.text, 'html.parser')
price_box = soup.find(class_="ccOutputRslt")
rate = price_box
print(rate) #checking the output
def gbp_to_usd(rate,gbp):
dollars=gpb*rate
return dollars
gbp = input("Enter GBP amount: ")
finalamt = gbp_to_usd(float(rate),float(gbp))
print(str(gbp)+" GBP is equvalent to "+"$"+str(finalamt)+" USD")
我对python和编码一般都很新,任何帮助都会非常感激。
此致
克里斯
答案 0 :(得分:0)
试试这个。它应该能得到你想要的值。
import requests
from bs4 import BeautifulSoup
page = requests.get('https://www.x-rates.com/calculator/?from=GBP&to=USD&amount=1')
soup = BeautifulSoup(page.text, 'html.parser')
part1 = soup.find(class_="ccOutputTrail").previous_sibling
part2 = soup.find(class_="ccOutputTrail").get_text(strip=True)
rate = "{}{}".format(part1,part2)
def gbp_to_usd(rate,gbp):
dollars=gbp*rate
return dollars
gbp = input("Enter GBP amount: ")
finalamt = gbp_to_usd(float(rate),float(gbp))
print(str(gbp)+" GBP is equvalent to "+"$"+str(finalamt)+" USD")
答案 1 :(得分:-2)
我认为这就是你想要的
{{1}}