文為你深入解析一款優秀且易用的HTML網頁內容提取工具,此項功能能協助用戶輕易提取到需要的網頁數據。面對市面上琳瑯滿目的此類產品,我們又該如何從中擇優錄取?接下來,文章將從九大維度對若干流行的HTML網頁內容提取工具進行全面評析,助你迅速挑選出最理想的那一款。
1.功能豐富程度
首先需考慮工具之功能多樣性。部分工具僅支持基礎文本提取,其他如圖片、鏈接、表格等復雜元素亦可提取。針對個人需求選取更為完善的工具,將有效節約寶貴的時間與精力。
2.提取速度
對于海量網頁處理,效率便是關鍵性的衡量指標之一。倘若選擇的提取工具速度過低,必然會使整體流程相當耗費時間精力。因此,在試用或選用任何提取工具時,務必關注其運行速度能否滿足您的實際需求。
3.使用難度
網頁內容抓取優化應注重操作簡易性,以滿足用戶對快速獲取所需信息的訴求。選擇具備易學特性的此類軟件有助于降低用戶在學習和掌握過程中的投入代價。
4.兼容性
在選用工具時應著重考量其適應性,部分工具僅適用于特定種類的頁面,而另一些工具則可適應各類網頁。若須應對多樣格式的頁面,選擇兼容性優良的工具至關緊要。
5.提取精度
提取效率乃評估HTML網頁內容提取工具績效之主要標準之一。理想的工具應能精準抽取所需資訊,規避無關元素及關鍵信息的遺漏。
6.擴展性
部分工具配備豐富的拓展性功能,方便按需二次開發。若您有著特定要求,應選取能夠滿足這一條件的工具。
7.技術支持
優質的技術支持對于面對使用中出現問題時至關重要,故而在選用HTML頁面信息提取器時需慎重考慮其技術支持的響應速度與提供的詳實用戶指南和教程情況。
8.用戶口碑
衡量工具質量的主要標準之一即為用戶反饋反饋。查閱相關用戶的評論與體驗信息可以深入了解各類工具的價值。通過使用搜索引擎以及論壇可獲取他人對工具的評價意見。
9.價格
最終,定價策略在選擇HTML網頁內容提取工具時具有重要影響。部分工具提供免費服務,另有部分需購買使用授權。應根據自身財務狀況做出明智決策,以避免不必要的奢侈消費。
經過分析總結來看,篩選出一款稱心如意的HTML網頁內容提取工具并非易事。然而,只要您遵循文中列舉的九項指標展開客觀評估,綜合考慮各類因素,便有望選到最為貼合自身需求的利器。期望本文能為您提供實質性的參考作用!
# 計算變量的方差
# 如果方差接近于0,也就是該特征的特征值之間基本上沒有差異,這個特征對于樣本的區分并沒有什么用,剔除
from sklearn.feature_selection import VarianceThreshold
selector = VarianceThreshold(threshold=0.1) #默認threshold=0.0
selector.fit_transform(df[numerical_features])
# 查看各個特征的方差,
selector.variances_ ,len(selector.variances_)
# 特征對應方差
all_used_features_dict = dict(zip(numerical_features,selector.variances_ ))
all_used_features_dict
協方差
?如果協方差為正,說明X,Y同向變化,協方差越大說明同向程度越高;
?如果協方差維負,說明X,Y反向運動,協方差越小說明反向程度越高;
?如果兩個變量相互獨立,那么協方差就是0,說明兩個變量不相關。
pearson系數
(1) 相關概念和值大小含義
相關系數也可以看成協方差:一種剔除了兩個變量量綱影響、標準化后的特殊協方差。
可以反映兩個變量變化時是同向還是反向,如果同向變化就為正,反向變化就為負。由于它是標準化后的協方差,因此更重要的特性來了,它消除了兩個變量變化幅度的影響,而只是單純反應兩個變量每單位變化時的相似程度。
假設對于Pearson r相關性,兩個變量都應該是正態分布的
pearson數值大小衡量相關性:
0.8-1.0 極強相關 | 0.6-0.8 強相關 | 0.4-0.6 中等程度相關 | 0.2-0.4 弱相關 | 0.0-0.2 極弱相關或無相關
(2) pearson 系數的優缺點:
?優點: 可以通過數值對變量之間相關性衡量,正值代表正相關、負值代表負相關、0代表不相關
?缺點: 沒有對變量之間的關系進行提煉和學習,預測其實是學習不同特征之間的組合既關系。只能判別特征之間的線性相關性,如果是非線性相關就不可取。
(3) 適用場景
兩個變量之間是線性關系,都是連續數據。
兩個變量的總體是正態分布,或接近正態的單峰分布。
兩個變量的觀測值是成對的,每對觀測值之間相互獨立
(4) 相關代碼
通過numpy
import numpy as np
np.corrcoef([a,b,c,d])
pandas中corr()函數
import matplotlib.pyplot as plt
plt.figure(figsize = (25,25))
#### 傳入相關特征即可,輸出為所有特征之間相關性
corr_values1 = data[features].corr()
sns.heatmap(corr_values1, annot=True,vmax=1, square=True, cmap="Blues",fmt='.2f')
plt.tight_layout()
plt.savefig('**.png',dpi=600)
plt.show()
利用scipy,輸出兩個值,第一個值為相關系數,第二個值越小代表兩個之間相關性越高
import numpy as np
from scipy.stats import pearsonr
### 計算兩個特征之間相關性,同時也可以計算特征和標簽之間相關性
print("Lower noise", df(x, x1))
(5) 通過pearson系數刪選特征
? 5.1 通過和label之間的相關性之間,通過設置閾值刪選
def del_corr_fea(df,cor_df):
"""
df是原始數據,cor_df為通過pd.corr()獲得特征間相關性矩陣,
"""
cor_df = cor_df.reset_index()
feature_col = [col for col in df.columns if col not in drop_fea_list]
drop_fea = []
for i,f in enumerate(feature_col):
if f not in drop_fea:
cor_df1 = cor_df[i+1:][[f,'index']]
cor_df_sel = cor_df1[cor_df1[f]>=0.8]
cor_df_sel.sort_values(by=[f],ascending = False,inplace = True)
del_name = cor_df_sel['index'].values.tolist()[1:]
drop_fea = del_name + drop_fea
return drop_fea
drop_list_no_p = del_corr_fea(data_end,corr_values_fea_fea)
5.2 首先計算不同特征之間相關性,然后通過相關性取出相似性最高的幾個特征,并保留和label間系數最高的特征
def del_corr_fea(df,cor_df,cor_df_with_label):
"""
df是原始數據,cor_df為通過pd.corr()獲得特征間相關性矩陣,cor_df_with_label和標簽之間相關性
"""
cor_df = cor_df.reset_index()
cor_df = cor_df.rename(columns = {'index':'feature'})
feature_col = [col for col in df.columns if col not in drop_fea_list]
drop_fea = []
for i,f in enumerate(feature_col):
if f not in drop_fea:
print(len(drop_fea))
cor_df1 = cor_df[i:][[f,'feature']]
cor_df_sel = cor_df1[cor_df1[f]>=0.8]
sort_corr_df = cor_df_sel.merge(cor_df_with_label,on = 'feature',how = 'left')
## p 更改為相關性矩陣的列名
sort_corr_df.sort_values(by=['p'],ascending = False,inplace = True)
del_name = sort_corr_df['feature'].values.tolist()[1:]
drop_fea = del_name + drop_fea
return drop_fea
drop_feature_list = del_corr_fea(data_end,corr_values_fea_fea,d_df)
len(drop_feature_list)
(1) 最簡單方式(回歸模型,分類可以去官網查 https://scikit-learn.org/stable/modules/generated/sklearn.feature_selection.SelectKBest.html#sklearn.feature_selection.SelectKBest.set_params)
from sklearn.feature_selection import SelectKBest,f_regression
print(data_end.shape)
sk=SelectKBest(f_regression,k=300)
# drop_columns 為不需要判別的列名
new_train=sk.fit_transform(data_end.drop(drop_columns,axis = 1),data_end['label'].astype('int'))
print(new_train.shape)
# 獲取對應列索引
select_columns=sk.get_support(indices = True)
print(select_columns)
print(data_end.columns[select_columns])
(2) 通過樹模型輸出特征重要性,一般選用Xgboost、Lightgbm等,這里采用lightgbm示例。
ubmed按照簡單的關鍵詞檢索出來的文獻實在太多了,如果想查詢其中中IF在1-2分或者是2-3分的文獻,直接按照分值段進行文獻篩選該如何操作呢?
PubMed按照影響因子篩選文獻其實真的非常簡單,小編手把手帶你操作一次,看一次包會
操作步驟
步驟1:打開PubMed主頁,點擊頁面右上角登錄或注冊(如下圖)
步驟2:登陸PubMed賬號后,點擊右上方的My NCBI
步驟3:點擊打開頁面右下方的Manage Filters
步驟4:點擊左上方 Create custom filter
步驟5:之后會出現以下窗口,接下來需要在框內輸入影響因子檢索式。(下一步會說明如何獲取檢索式)
步驟6:如何獲取影響因子檢索式?
影響因子檢索式自動生成網站--Scholarscope
網址:
https://www.scholarscope.cn/tools/issn.html
這個網站可以直接輸入分值段,自動生成影響因子檢索式。影響因子檢索式生成以后直接復制到第五步中的公式輸入框內。
步驟7:添加影響因子檢索式
比如說你想要添加1-2分的文獻影響因子:
在Scholarscope自動生成檢索式,粘貼檢索式完成后,在Save filter as 中輸入名稱,如“1≤ IF ≤2”,(這里需要對篩選的分值段命名,方便以后篩選),點擊save filter。
(其它分值段方式一樣)
步驟8:各個分值段的檢索式粘貼完成后,勾選上設置好的影響因子,這樣就已經設置好了。
顯示如下圖所示:
步驟9:在PubMed隨意挑選自己想要的影響因子的文獻
接下來,打開PubMed主頁,我們就可以快速進行檢索,隨意挑選自己想要的影響因子的文獻。
顯示如下圖所示:
(這里我只做示范設置了兩個分值,具體需要哪些分值按照自己需求添加即可)
注意:
在PubMed搜索文獻以后,文獻下方可以自動顯示“影響因子、引用次數、全文下載鏈接、AMA格式引用”,以下藍字文章里面有講過如何讓PubMed直接顯示影響因子,這里就不多說了。
想讓pubmed直接顯示影響因子,我用兩個最簡單的方法搞定了!
附加學習
如何在PubMed中用字段檢索進行精準找文獻?
除了設置文獻影響因子篩選公式,快速對檢索內容進行影響因子分段外,“檢索字段標識符(也就是字段檢索)”方法也是查找文獻常見方式之一,可以做到快,狠,準找到目標文獻。
下面藍字文章中我們列舉了在pubmed 中檢索文獻的多個檢索技巧。有小伙伴私聊說對自然語言檢索中的第6點“檢索字段標識符”不理解怎么操作,這里詳細舉例說明一下。
字段限制檢索就是采用字段限制方式進行檢索。
其規則是:
檢索詞1[字段標識] + 邏輯運算符 + 檢索詞2[字段標識]
并列條下系統默認空格為AND檢索,運算符需大寫。(一定要是輸入法大寫狀態下的空格)
常用檢索字段描述和標識:
(可快速查找某期刊/某年份發表的某類疾病/某方向的論文)
Title[ti]:篇名字段
Abstract[ab]:摘要字段
Authorname[au]:文章的作者,檢索格式:姓+名。如:"smith ja"[au]
Journaltitle[ta]:期刊名稱,如:Medical Oncology [ta]
Dateof publication[dp]: 出版年份,如: 1993[dp]
MESH[mh]:主題詞, 如:DNA[mh]
Language[la]:論文出版語種。語種檢索時可只輸入前3個字母,如:chi[la]=chinese[la];English[lang]=eng[la]
舉兩個檢索例子:
例1:查找作者為crick在1993年發表的有關DNA方面的文獻
對應的檢索式:DNA[mh] crick[au] 1993[dp]
例2:查找BMC cancer上中國人發表的文章
對應的檢索式:BMC cancer[ta] Chinese[Affiliation]
基本上關于PubMed的各種使用技巧都已經講完了,大家可以稍微整合一起學習一下,學以致用才是學習的最終目的。
文末福利【SCI英語科研論文寫作視頻+PPT],私信回復關鍵字母“SCI英文”即可領取!(一定要私信哦~點擊我的頭像進入主頁面,點擊右上角私信按鈕)即可免費領取~
更多資源也可私信獲得
*請認真填寫需求信息,我們會在24小時內與您取得聯系。