我正在尝试使用漂亮的汤在谷歌网页上获取美元的价值。但是,每次调用find_all()函数都会返回None。我不知道自己要做什么。请帮帮我!
代码:
#Get dollar value
from requests import *
from bs4 import *
r = get("https://www.google.com.br/#q=dolar")
if (r.status_code != 200):
print ("conexão inválida")
else:
print("Prosseguindo...")
soup = BeautifulSoup(r.content, "html.parser")
print (soup.find_all("div", attrs = {"class" : "vk_ans vk_bk"}))
print (soup.find_all("div", class_="vk_ans vk_bk"))
print (soup.find_all(string="reais"))
print (soup.find_all(class_="vk_ans"))
print (soup.select("div.vk_ans.vk_bk"))
print (soup.html.find_all("div", class_="vk_ans"))
print (soup.select(".vk_ans vk_bk"))
我正在使用python 3.4和bs4.4.0 Windows 8.1
答案 0 :(得分:0)
find_all
正在返回None
,因为它找不到您要求的元素。请注意,您在浏览器中https://www.google.com.br/#q=dolar
看到的HTML代码可能与requests.get
提取的代码不同。
您可以通过在响应字符串中搜索类名来轻松检查:
In [13]: "vk_ans" in r.content
Out[13]: False
代码中没有字符串vk_ans
的痕迹。
另外,有两个注释:
from X import *
。您正在规划脚本的全局命名空间。