亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区
Chinaunix
標題:
解析html
[打印本頁]
作者:
wanshun1818
時間:
2010-12-29 12:53
標題:
解析html
目前 我獲得一個網(wǎng)頁的html codes
其中 有這么一段
-------
-------
<!-- --><div class="getcodeinstructions">
<ol class="listings">
<li><span class="numberone"></span>
<div>
<label for="bcode">Click inside the box below and copy all the code.</label><br
-------
-----
我想從這個html codes中 找到上面我貼出來的代碼中的字符串“getcodeinstruction”“
請問 有那個大蝦能指點下嗎?
(目前我 一次行從這個 里面讀取1024個bytes, 使用 strstr(buffer,"getcodeinstructions")來 定位這個字符串,
但我覺得會出現(xiàn)一中情況 匹配不到, 舉個例子就是前面1024個bytes剛好
包含到getcode 就結束了,然后在一次讀取1024個bytes, 就包含到“instructions”
這樣 我就無法匹配到我我想要的這個字符串了,不知道有沒什么更好的辦法來定位這個字符串)
不知道這次問題說清楚了沒,清各位賜教
作者:
scopengl
時間:
2010-12-29 14:52
假設你的字符串長度為Len,
1.讀取0~1023,匹配
2.讀取1023-Len~2047-Len,匹配
3.讀取2047-2*Len~3072-2*Len,匹配。
.....
作者:
wanshun1818
時間:
2011-02-28 17:19
回復
2#
scopengl
恩,這個方法 應該可以解決 字符串cut的問題, 我等下在debug一下;
目前我遇到另一個解析的問題,就是比如:
我 一次讀 1024 個bytes;
但是 可能 host 發(fā)送過來的只有500個bytes ,甚至 讀到0個bytes(網(wǎng)速灰常差時),但我確實這個網(wǎng)頁的數(shù)據(jù)還沒發(fā)送完,只是網(wǎng)速不行
我們暫時還讀不到數(shù)據(jù)而已,那這個 時候我的處理是delay一次,然后再去讀取數(shù)據(jù); 可有個問題時, 我如果delay次數(shù)多了,可能解些時間就慢了,不知道各位大蝦有沒什么好的解析html的方法,或有什么參考書,或參考資料推薦下;
作者:
shichuan609
時間:
2011-02-28 17:31
回復
3#
wanshun1818
跟我之前遇到的問題差不多。我是一邊獲取數(shù)據(jù),一遍解析,后來同事告訴我這樣很危險,就先獲取html文件,再用libxml解析。
作者:
wanshun1818
時間:
2011-02-28 17:38
回復
4#
shichuan609
直接獲取html文件? 你的意思是說,等所有bytes 都發(fā)送完了,在開始解析,是這個意思馬?
但是如果你讀完才開始解析,那不是就很慢嗎?( 尤其在我們所需要定位的字符串在這個html 開頭或者中間的時候)
作者:
shichuan609
時間:
2011-02-28 17:45
回復
5#
wanshun1818
好像還是不一樣啊,我是知道html文件每個節(jié)點的,只是得到數(shù)據(jù)而已。之前做的時候,好像跟2樓說的差不多,也是用拼接的方法,還算挺復雜的,不過后來也能得到數(shù)據(jù)的。
作者:
daniel_kohler
時間:
2011-02-28 18:30
回復
1#
wanshun1818
post給一個CGI,然后解析stdin。
作者:
wanshun1818
時間:
2011-02-28 18:32
回復
6#
shichuan609
我弱弱的問一句,“html文件每個節(jié)點” 這個東西是什么意思阿?
你后來問題解決了馬? 是怎么解決的( 解析數(shù)據(jù)的速度快不快)
作者:
wanshun1818
時間:
2011-02-28 18:34
回復
7#
daniel_kohler
我弱弱問一句“post給一個CGI,然后解析stdin。 ” 這個能將詳細點嗎?
( 我的數(shù)據(jù)發(fā)收 是通過socket 實現(xiàn)的,)
作者:
daniel_kohler
時間:
2011-02-28 18:38
回復
9#
wanshun1818
你的socket是自己寫的嗎?不用了,直接使用boa或者lighthttpd或者httpd就好了,有了它們,會省很多事兒。
你缺乏基本的web開發(fā)知識,建議你在linux上使用apache先熟悉一下。
作者:
wanshun1818
時間:
2011-02-28 18:43
回復
10#
daniel_kohler
我是在開發(fā)板開發(fā)的,socket是用的kernel自帶的;(kernel是mips)
作者:
daniel_kohler
時間:
2011-02-28 18:58
回復
11#
wanshun1818
知道你在說什么東西,
html <--> Web Server <--> CGI
嵌入式Wbe開發(fā),你先把我上面的流程搞清楚了。
歡迎光臨 Chinaunix (http://72891.cn/)
Powered by Discuz! X3.2