【发布时间】:2019-02-26 19:39:53
【问题描述】:
我是网页抓取和 python 的新手。在此之前我已经完成了一个脚本,效果很好。我在这个中做的基本相同,但运行速度较慢。 这是我的代码:
import requests
from bs4 import BeautifulSoup
from selenium import webdriver
import selenium
from selenium.webdriver import Firefox
from selenium.webdriver.firefox.options import Options
import time
start = time.time()
opp = Options()
opp.add_argument('-headless')
browser = webdriver.Firefox(executable_path = "/Users/0581279/Desktop/L&S/Watchlist/geckodriver", options=opp)
browser.delete_all_cookies()
browser.get("https://www.bloomberg.com/quote/MSGFINA:LX")
c = browser.page_source
soup = BeautifulSoup(c, "html.parser")
all = soup.find_all("span", {"class": "fieldValue__2d582aa7"})
price = all[6].text
browser.quit()
print(price)
end = time.time()
print(end-start)
有时,加载单个页面最多需要 2 分钟。我也只是在网上抓取彭博社。 任何帮助将不胜感激:)
【问题讨论】:
-
您是否尝试过对代码的计时部分进行计时,以查看哪些特定行使其如此缓慢?这将有助于我们查看您的网络是否存在问题,或者您在解析结果时是否存在问题。
-
问题似乎出在这个浏览器上。get("bloomberg.com/quote/MSGFINA:LX")
-
可能是您创建 webdriver 的方式。尝试使用 chrome,或者删除不需要的选项。
标签: python selenium web-scraping