❶ 怎麼樣從網路上獲取所需要的數據
關於從網頁上獲取數據
網頁上常包含適合在 Microsoft Excel 中進行分析的信息。例如,可以在 Excel 中使用直接從網頁上獲取的信息分析股票報價。根據需要,可以檢索可刷新的數據(即可以藉助網頁上的最新信息在 Excel 中更新數據),或者可以從網頁上獲取數據並將其靜態保存在工作表中。
1.使用 Web 查詢獲取可刷新的數據
藉助 Web 查詢,可以檢索網頁上的數據,如單個表格、多個表格或全部文本,然後利用 Excel 中的工具和功能對這些數據進行分析。只需單擊一下按鈕,即可方便地藉助網頁上的最新信息刷新數據。例如,可以從公共網頁上檢索和更新股票報價,或者從公司的網頁上檢索和更新銷售信息表格。
Web 查詢可檢索網頁上的數據並將其返回到 Excel 中進行分析。
2.復制和粘貼靜態數據或可刷新的查詢
可以使用熟悉的復制和粘貼命令將網頁上的數據復制到 Excel 工作表。將網頁上的數據粘貼到 Excel 中時,通過單擊「粘貼選項」 可靜態保存數據或者使其可以刷新。
3.從 Microsoft Office Web Components 中導出數據
在瀏覽器中,可以使用「導出到 Microsoft Excel」工具欄按鈕從互動式電子表格和數據透視表列表中導出數據。有關詳細信息,請參閱數據透視表列表或電子表格的「Microsoft Office Web Component 幫助」。
4.打開 HTML、MHTML 或 XML 文件
在 Excel 中,使用「文件」菜單上的「打開」命令可打開任意一個 HTML 文件、MTHML 文件或格式更完善的 XML 文件。
當打開一個 HTML 或 MHTML 文件時,將獲得整個網頁,但可能丟失一些格式、腳本、.gif 圖像文件(只在 HTML 中)或單個單元格中的數據列表。
當打開一個 XML 文件時,可以選擇應用一個還是多個引用樣式表。
❷ 如何獲取並分析一個網站的相關信息
隨著很多網站的做大做細,網站數據分析變得更為重要。通過網站數據分析可以充分了解一個網站的運作情況,並加以改進。這些數據會告訴你,你的網站流量是否有效?流量在哪裡流失?目標受眾是否精準?如何改善網站產品格局和網站運營?等等一系列問題。但在這之前的第一步就是需要獲取網站的數據。本文主要介紹如何獲取網站數據以及需要獲取哪些關鍵數據。
1,網站內部數據
網站內部數據是網站最容易獲取到的數據,它們往往就存放在網站的文件系統或資料庫中,也是與網站本身最為密切相關的數據,是網站分析最常見的數據來源,我們需要好好利用這部分數據。
伺服器日誌
網站分析不再局限於網頁瀏覽的PV、UV,轉化流失等,基於Events的分析將會越來越普遍,將會更多的關注用戶在接受網站服務的整個流程的情況。
隨著網站應用的不斷擴張,以及前端技術的不斷升華。網站日誌不再局限於點擊流的日誌數據,如果你的網站提供上傳下載、視頻音樂、網頁游戲等服務,那麼很明顯,你的網站伺服器產生的絕不僅有用戶瀏覽點擊網頁的日誌,也不只有標準的apache日誌格式日誌,更多的W3C、JSON或自定義格式的輸出日誌也給網站分析提供了新的方向。
網站分析工具
通過網站分析工具獲得數據是一個最為簡便快捷的方式,通過網站分析工具獲得的數據一般都已經經過特殊計算,較為規范,如PV、UV、Exit Rate、Bounce Rate等,再配上一些趨勢圖或比例圖,通過細分、排序等方法讓結果更為直觀。
但通過網站分析工具得到數據也遠不止這些,上面的這些數據也一樣可以通過統計網站日誌獲得,但網站分析工具的優勢在於其能通過一些嵌入頁面的JS代碼獲得一些有趣的結果,如一些網站分析工具提供的點擊熱圖,甚至滑鼠移動軌跡圖。這些分析結果往往對網站優化和用戶行為分析更為有效。
資料庫數據
對於一般的網站來說,存放於資料庫中的數據可以大致分為3個部分:
網站用戶信息,一般提供注冊服務的網站都會將用戶的注冊賬號和填寫的基本信息存放在資料庫裡面;
網站應用或產品數據,就像電子商務的商品詳細信息,如商品信息會包含商品名稱、特徵描述、產品屬性等;
用戶在應用服務或購買產品時產生的數據,最簡單的例子就是電商網站的用戶購買(購買單、報價單、詢盤)數據——購買時間、購買的用戶、購買的商品、購買數量、支付的金額等。
當然,這一部分數據的具體形式會根據網站的運營模式存在較大差異,一些業務范圍很廣,提供多樣服務的網站其資料庫中數據的組合會相當復雜。
其它
其它一切網站運營過程中產生的數據,有可能是用戶創造,也有可能是網站內部創造,其中有一大部分我們可以稱其為「線下數據」。
2,外部數據
網站分析除了可以從網站內部獲取數據以外,通過互聯網這個開放的環境,從網站外部獲取一些數據可以讓分析的結果更加全面。
互聯網環境數據
可以去一些網路數據分析平台查一下互聯網中頂級網站的訪問量趨勢。
競爭對手數據
時刻關注競爭對手的情況可以讓你的網站不至於在競爭中落伍。除了一些網站數據查詢平台以外,直接從競爭對手網站上獲取數據也是另外一條有效的途徑,也有網站會出於某些原因(信息透明、數據展示等)將自己的部分統計信息展現在網站上,看看那些數據對於掌握你的競爭對手的情況是否有幫助。
在獲取上述幾類數據的同時,也許我們還可以從其他方面獲取一些更為豐富的數據。
合作夥伴數據
如果你有合作的網站或者你經營的是一個電子商務網站,也許你會有相關的產品提供商、物流供應商等合作夥伴,看看他們能為你提供些什麼數據。
用戶數據
如果你的網站已經小有名氣,那麼嘗試在搜索引擎看看用戶是怎麼評價你的網站,或者通過SNS網站等看看用戶正在上面發表什麼關於你的網站的言論。
當然通過用戶調研獲取數據是另外一個不錯的途徑,通過網站上的調查問卷或者線下的用戶回訪,電話、IM調查,可用性實驗測試等方式可以獲取一些用戶對網站的直觀感受和真實評價,這些數據往往是十分有價值的,也是普通的網站分析工具所獲取不到的。
在分析網站的外部數據的時候,需要注意的是不要過於相信數據,外部數據相比內部數據不確定性會比較高。網站內部數據即使也不準確,但我們至少能知道數據的誤差大概會有多大,是什麼原因造成了數據存在誤差。而外部數據一般都是有其他網站或機構公布的,每個公司,無論是數據平台、咨詢公司還是合作夥伴都可能會為了某些利益而使其公布的數據更加可信或更具一定的偏向性,所以我們在分析外部數據是需要更加嚴格的驗證和深入的分析。而對於用戶調研中獲取的數據,我們一般會通過統計學的方法檢驗數據是否可以被接受,或者是否滿足一定的置信區間,這是進行數據分析前必須完成的一步。
❸ 怎麼從網站上面獲取數據
IE瀏覽器有OLE對象,可以通過這個功能,提取所有元素的信息,還有就是有些軟體應該可以。。。
如果想白手起家,那就直接正則匹配文本,寫一個提取元素的小程序,也行。。。
❹ 如何 用java語言獲得網頁數據
你這個是不是A系統想了解B系統的頁面信息?
如果是這樣存在一個問題比較難解決,版就是數據源問題,權你A系統並不知道B系統的數據。
如果要獲取招聘信息的公司名稱,有幾個思路
1、A系統做一個iframe,這個iframe裡面嵌入你要訪問的URL,然後你通過JS,獲取這個iframe標簽裡面的所有內容,這樣數據源就解決了
2、你可以做一個瀏覽器插件,這個插件的功能就是獲取當前訪問頁面的所有字元數據,獲取到數據後將數據發送到A系統
3、對網頁進行截圖,然後通過OCR軟體獲取圖片中的文字,並將文字保存成文本,A系統讀取這個文本信息,數據源問題也可以解決
以上上個只是我臨時想到的,可能還可以運用JAVA的全文檢索框架試試看,因為沒有用過這個框架所以不知道是否能夠實現
獲取到數據源後,接下來就是業務處理了,業務處理就看具體業務進行處理就行了,技術方面就是一個文字處理的功能,技術好實現,業務比較復雜
❺ EXCEL VBA獲取某個需要登錄的網站上的數據
可以通過WebBrowser控制項的使用實現該功能
以下實例打開網路,在輸入框輸入「aaa」
Public Sub useie()
'引用Microsoft Internet Controls
Dim IE
On Error Resume Next
Set IE = CreateObject("InternetExplorer.application")
IE.Visible = True
IE.Navigate URL:=""
timeie = DateAdd("s", 20, Now()) '等待20s
Do While IE.Busy And Not IE.ReadyState = READYSTATE_COMPLETE
DoEvents
If timeie < Now() Then
MsgBox 「無法連接重新執行」
IE.Quit
Exit Sub
End If
Loop
IE.Document.getElementById("kw").Value = "aaa"
Set IE = Nothing
Set ID = Nothing
End Sub
WebBrowser控制項的使用
0、常用方法
Navigate(string urlString):瀏覽urlString表示的網址
Navigate(System.Uri url):瀏覽url表示的網址
Navigate(string urlString, string targetFrameName, byte[] postData, string additionalHeaders): 瀏覽urlString表示的網址,並發送postData中的消息
//(通常我們登錄一個網站的時候就會把用戶名和密碼作為postData發送出去)
GoBack():後退
GoForward():前進
Refresh():刷新
Stop():停止
GoHome():瀏覽主頁
WebBrowser控制項的常用屬性:
Document:獲取當前正在瀏覽的文檔
DocumentTitle:獲取當前正在瀏覽的網頁標題
StatusText:獲取當前狀態欄的文本
Url:獲取當前正在瀏覽的網址的Uri
ReadyState:獲取瀏覽的狀態
WebBrowser控制項的常用事件:
DocumentTitleChanged,
CanGoBackChanged,
CanGoForwardChanged,
DocumentTitleChanged,
ProgressChanged,
ProgressChanged
1、獲取非input控制項的值:
webBrowser1.Document.All["控制項ID"].InnerText;
或webBrowser1.Document.GetElementById("控制項ID").InnerText;
或webBrowser1.Document.GetElementById("控制項ID").GetAttribute("value");
2、獲取input控制項的值:
webBrowser1.Document.All["控制項ID"].GetAttribute("value");;
或webBrowser1.Document.GetElementById("控制項ID").GetAttribute("value");
3、給輸入框賦值:
//輸入框
user.InnerText = "myname";
password.InnerText = "123456";
webBrowser1.Document.GetElementById("password").SetAttribute("value", "Welcome123");
4、下拉、復選、多選:
//下拉框:
secret.SetAttribute("value", "question1");
//復選框
rememberme.SetAttribute("Checked", "True");
//多選框
cookietime.SetAttribute("checked", "checked");
5、根據已知有ID的元素操作沒有ID的元素:
HtmlElement btnDelete = webBrowser1.Document.GetElementById(passengerId).Parent.Parent.Parent.Parent.FirstChild.FirstChild.Children[1].FirstChild.FirstChild;
根據Parent,FirstChild,Children[1]數組,多少層級的元素都能找到。
6、獲取Div或其他元素的樣式:
webBrowser1.Document.GetElementById("addDiv").Style;
7、直接執行頁面中的腳本函數,帶動態參數或不帶參數都行:
Object[] objArray = new Object[1];
objArray[0] = (Object)this.labFlightNumber.Text;
webBrowser1.Document.InvokeScript("ticketbook", objArray);
webBrowser1.Document.InvokeScript("return false");
8、自動點擊、自動提交:
HtmlElement btnAdd = doc.GetElementById("addDiv").FirstChild;
btnAdd.InvokeMember("Click");
9、自動賦值,然後點擊提交按鈕的時候如果出現腳本錯誤或一直載入的問題,一般都是點擊事件執行過快,這時需要藉助Timer控制項延遲執行提交按鈕事件:
this.timer1.Enabled = true;
this.timer1.Interval = 1000 * 2;
private void timer1_Tick(object sender, EventArgs e)
{
this.timer1.Enabled = false;
ClickBtn.InvokeMember("Click");//執行按扭操作
}
10、屏蔽腳本錯誤:
將WebBrowser控制項ScriptErrorsSuppressed設置為True即可
11、自動點擊彈出提示框:
private void webBrowser1_Navigated(object sender, WebBrowserNavigatedEventArgs e)
{
//自動點擊彈出確認或彈出提示
IHTMLDocument2 vDocument = (IHTMLDocument2)webBrowser1.Document.DomDocument;
vDocument.parentWindow.execScript("function confirm(str){return true;} ", "javascript"); //彈出確認
vDocument.parentWindow.execScript("function alert(str){return true;} ", "javaScript");//彈出提示
}
WebBrowser頁面載入完畢之後,在頁面中進行一些自動化操作的時候彈出框的自動點擊(屏蔽)
private void webBrowser1_DocumentCompleted(object sender, e)
{
//自動點擊彈出確認或彈出提示
IHTMLDocument2 vDocument = (IHTMLDocument2)webBrowser1.Document.DomDocument;
vDocument.parentWindow.execScript("function confirm(str){return true;} ", "javascript"); //彈出確認
vDocument.parentWindow.execScript("function alert(str){return true;} ", "javaScript");//彈出提示
//下面是你的執行操作代碼
}
12、獲取網頁中的Iframe,並設置Iframe的src
HtmlDocument docFrame = webBrowser1.Document.Window.Frames["mainFrame"].Document;
或
HtmlDocument docFrame = webBrowser1.Document.All.Frames["mainFrame"].Document;
docFrame.All["mainFrame"].SetAttribute("src", "");
13、網頁中存在Iframe的時候webBrowser1.Url和webBrowser1_DocumentCompleted中的e.Url不一樣,前者是主框架的Url,後者是當前活動框口的Url。
14、讓控制項聚焦
this.webBrowser1.Select();
this.webBrowser1.Focus();
doc.All["TPL_password_1"].Focus();
15、打開本地網頁文件
webBrowser1.Navigate(Application.StartupPath + @"\Test.html");
16、獲取元素、表單
//根據Name獲取元素
public HtmlElement GetElement_Name(WebBrowser wb,string Name)
{
HtmlElement e = wb.Document.All[Name];
return e;
}
//根據Id獲取元素
public HtmlElement GetElement_Id(WebBrowser wb, string id)
{
HtmlElement e = wb.Document.GetElementById(id);
return e;
}
//根據Index獲取元素
public HtmlElement GetElement_Index(WebBrowser wb,int index)
{
HtmlElement e = wb.Document.All[index];
return e;
}
//獲取form表單名name,返回表單
public HtmlElement GetElement_Form(WebBrowser wb,string form_name)
{
HtmlElement e = wb.Document.Forms[form_name];
return e;
}
//設置元素value屬性的值
public void Write_value(HtmlElement e,string value)
{
e.SetAttribute("value", value);
}
//執行元素的方法,如:click,submit(需Form表單名)等
public void Btn_click(HtmlElement e,string s)
{
e.InvokeMember(s);
}