python 使用selenium爬取加载js的网页
因为使用的是谷歌游览器,需要下载与谷歌游览器相关版本的chromedriver.exe,不然会报错或者网页不加载。使用selenium加载js网页成功解决了request库爬取网页所带来的网页源代码不完整的问题。
from bs4 import BeautifulSoup
from selenium import webdriver # 加载浏览器的库
import numpy as np
import pandas as pd
url='http://zq.win007.com/cn/team/Summary/24.html'
try:
browser=webdriver.Chrome(r"C:\Users\Administrator\AppData\Local\Google\Chrome\Application\chromedriver.exe")
browser.get(url)
html = browser.page_source
soup=BeautifulSoup(html,'html.parser')
a=soup.find(id="Tech_schedule").get_text()
b=re.split(' ',a)
name=['比赛','时间','主队','比分','客队','犯规','黄牌','红牌','控球率','射门(射正)','传球(成功)',
'传球成功率','界外球','过人次数','角球','越位','头球(成功)','救球','铲球','射门不中','射门被挡',
'评分']
del b[0:15]
c=np.array(b).reshape(int(len(b)/22),22)
c_1=pd.DataFrame(c,columns=name)
browser.quit()
except:
print("从 " + url + "获取数据失败")
browser.quit()