• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

Lấy source html của trang web

Các mẹo vặt linh tinh khác, không thuộc nhóm nào
Hình đại diện của người dùng
NoBi
Quản trị
Quản trị
Bài viết: 954
Ngày tham gia: T.Ba 18/03/2008 1:22 pm
Đến từ: Sài Gòn
Has thanked: 51 time
Been thanked: 66 time
Liên hệ:

Lấy source html của trang web

Gửi bàigửi bởi NoBi » T.Tư 03/12/2008 10:07 pm

Thủ thuật: Lấy source trang web
Tác giả: Sưu tầm
Mô tả: Lấy mã nguồn html của 1 trang web


Không dùng ctrl thì dùng API zậy
Đặt cái này trong module. Khi dùng thì gọi Text1.Text = GetUrlSource("http://www.abc.com")

Mã: Chọn hết

  1. Public Declare Function InternetOpen Lib "wininet.dll" Alias "InternetOpenA" (ByVal sAgent As String, ByVal lAccessType As Long, ByVal sProxyName As String, ByVal sProxyBypass As String, ByVal lFlags As Long) As Long
  2. Public Declare Function InternetOpenUrl Lib "wininet.dll" Alias "InternetOpenUrlA" (ByVal hInternetSession As Long, ByVal sURL As String, ByVal sHeaders As String, ByVal lHeadersLength As Long, ByVal lFlags As Long, ByVal lContext As Long) As Long
  3. Public Declare Function InternetReadFile Lib "wininet.dll" (ByVal hFile As Long, ByVal sBuffer As String, ByVal lNumBytesToRead As Long, lNumberOfBytesRead As Long) As Integer
  4. Public Declare Function InternetCloseHandle Lib "wininet.dll" (ByVal hInet As Long) As Integer
  5.  
  6. Public Const IF_FROM_CACHE = &H1000000
  7. Public Const IF_MAKE_PERSISTENT = &H2000000
  8. Public Const IF_NO_CACHE_WRITE = &H4000000
  9.        
  10. Private Const BUFFER_LEN = 256
  11.  
  12. Public Function GetUrlSource(sURL As String) As String
  13.     Dim sBuffer As String * BUFFER_LEN, iResult As Integer, sData As String
  14.     Dim hInternet As Long, hSession As Long, lReturn As Long
  15.     hSession = InternetOpen("vb wininet", 1, vbNullString, vbNullString, 0)
  16.     If hSession Then hInternet = InternetOpenUrl(hSession, sURL, vbNullString, 0, IF_NO_CACHE_WRITE, 0)
  17.     If hInternet Then
  18.  
  19.         iResult = InternetReadFile(hInternet, sBuffer, BUFFER_LEN, lReturn)
  20.         sData = sBuffer
  21.  
  22.         Do While lReturn <> 0
  23.             iResult = InternetReadFile(hInternet, sBuffer, BUFFER_LEN, lReturn)
  24.             sData = sData + Mid(sBuffer, 1, lReturn)
  25.         Loop
  26.     End If
  27.     iResult = InternetCloseHandle(hInternet)
  28.     GetUrlSource = sData
  29. End Function


:>

QuangHoa
Guru
Guru
Bài viết: 542
Ngày tham gia: T.Năm 27/03/2008 9:02 am
Đến từ: Quê hương Đại tướng Võ Nguyên Giáp
Been thanked: 5 time
Liên hệ:

Re: Lấy source trang web

Gửi bàigửi bởi QuangHoa » T.Tư 03/12/2008 10:43 pm

Hình như chỉ cần xài hàm này là Ok mà

Mã: Chọn hết

  1. Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, _
  2. ByVal szURL As String, ByVal szFileName As String, _
  3. ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
  4.  
朋友
这些年一个人风也过雨也走,有过泪有过错还记得坚持什么。
真爱过才会懂会记没会回手,终有梦中有你在心中。
朋友一生一起走那些日子不再有,一句话一辈子一生情一杯九。
朋友不曾孤单过一声朋友你会懂,还有伤还有痛还要走还有我。

Hình đại diện của người dùng
truongphu
VIP
VIP
Bài viết: 4762
Ngày tham gia: CN 04/11/2007 10:57 am
Đến từ: Cam Đức, Khánh hòa
Has thanked: 14 time
Been thanked: 515 time

Re: Lấy source trang web

Gửi bàigửi bởi truongphu » T.Ba 09/12/2008 3:32 pm

Dùng như sau:

Mã: Chọn hết

  1. Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, _
  2. ByVal szURL As String, ByVal szFileName As String, _
  3. ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
  4. Private Sub Command1_Click()
  5. Dim DownloadFile As Long  ' source web.txt o' cùng folder
  6. DownloadFile = URLDownloadToFile(0, "http://www.caulacbovb.com/forum", "source web.txt", 0, 0)
  7. End Sub

Tôi đã dùng function nầy trong bài "Re: Cách lấy IP thực khi máy có vào Internet !!!"
o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

rungxanhonline
Thành viên tích cực
Thành viên tích cực
Bài viết: 108
Ngày tham gia: T.Sáu 20/06/2008 4:07 pm
Has thanked: 5 time
Been thanked: 5 time

Re: Lấy source trang web

Gửi bàigửi bởi rungxanhonline » T.Hai 15/12/2008 8:22 pm

Tại sao link này view không thấy code nhi?
http://hayso1.com/m/asx.php?type=1&id=60556
Cái này dùng IE không thấy link nhưng dùng WMP hoặc check Browser Name thì được có bác nào biết lấy code link này bằng VB không?
Newbie đang học hỏi.
Mong các bác bớt thời gian chỉ giáo!

QuangHoa
Guru
Guru
Bài viết: 542
Ngày tham gia: T.Năm 27/03/2008 9:02 am
Đến từ: Quê hương Đại tướng Võ Nguyên Giáp
Been thanked: 5 time
Liên hệ:

Re: Lấy source trang web

Gửi bàigửi bởi QuangHoa » T.Hai 15/12/2008 8:35 pm

Link truy vấn mà.
朋友
这些年一个人风也过雨也走,有过泪有过错还记得坚持什么。
真爱过才会懂会记没会回手,终有梦中有你在心中。
朋友一生一起走那些日子不再有,一句话一辈子一生情一杯九。
朋友不曾孤单过一声朋友你会懂,还有伤还有痛还要走还有我。

rungxanhonline
Thành viên tích cực
Thành viên tích cực
Bài viết: 108
Ngày tham gia: T.Sáu 20/06/2008 4:07 pm
Has thanked: 5 time
Been thanked: 5 time

Re: Lấy source trang web

Gửi bàigửi bởi rungxanhonline » T.Hai 15/12/2008 8:54 pm

Có cách nào lấy link cái file asx trên kia không bác.Code VB đó.
Newbie đang học hỏi.
Mong các bác bớt thời gian chỉ giáo!

rungxanhonline
Thành viên tích cực
Thành viên tích cực
Bài viết: 108
Ngày tham gia: T.Sáu 20/06/2008 4:07 pm
Has thanked: 5 time
Been thanked: 5 time

Re: Lấy source trang web

Gửi bàigửi bởi rungxanhonline » T.Sáu 19/12/2008 5:46 pm

Lấy Code file asx ở trên có người bảo phải dùng cái trình duyệt gì đó , hay dùng cái gì của WMP bác nào biết chỉ dùm em đi
Newbie đang học hỏi.
Mong các bác bớt thời gian chỉ giáo!

Hình đại diện của người dùng
clarkkent
Mạnh Thường Quân
Mạnh Thường Quân
Bài viết: 1641
Ngày tham gia: T.Tư 16/04/2008 11:25 am
Đến từ: Chợ Lách - Bến Tre
Been thanked: 31 time
Liên hệ:

Re: Lấy source html của trang web

Gửi bàigửi bởi clarkkent » T.Bảy 10/01/2009 8:35 pm

Xài INET control

Mã: Chọn hết

  1. Private Function GetHTML(url$) As String
  2. Dim response$
  3. Dim vData As Variant
  4.  
  5.   Inet1.Cancel
  6.    response = Inet1.OpenURL(url)
  7.   If response <> "" Then
  8.     Do
  9.       vData = Inet1.GetChunk(1024, icString)
  10.       DoEvents
  11.       If Len(vData) Then
  12.         response = response & vData
  13.       End If
  14.     Loop While Len(vData)
  15.   End If
  16.    GetHTML = response
  17. End Function
• Hôm bây: www.tinsoftware.com ^ ^
Cố gắng lên...

Hình đại diện của người dùng
NoBi
Quản trị
Quản trị
Bài viết: 954
Ngày tham gia: T.Ba 18/03/2008 1:22 pm
Đến từ: Sài Gòn
Has thanked: 51 time
Been thanked: 66 time
Liên hệ:

Re: Lấy source trang web

Gửi bàigửi bởi NoBi » T.Sáu 06/02/2009 12:29 pm

rungxanhonline đã viết:Tại sao link này view không thấy code nhi?
http://hayso1.com/m/asx.php?type=1&id=60556
Cái này dùng IE không thấy link nhưng dùng WMP hoặc check Browser Name thì được có bác nào biết lấy code link này bằng VB không?

Cái trang đó cũng lấy source như trên thôi.
:>

Hình đại diện của người dùng
truongphu
VIP
VIP
Bài viết: 4762
Ngày tham gia: CN 04/11/2007 10:57 am
Đến từ: Cam Đức, Khánh hòa
Has thanked: 14 time
Been thanked: 515 time

Re: Lấy source html, Internet Time

Gửi bàigửi bởi truongphu » T.Hai 06/04/2009 9:40 am

Mã: Chọn hết

  1. Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, _
  2.    ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
  3. Private Declare Function DeleteUrlCacheEntry Lib "Wininet.dll" Alias "DeleteUrlCacheEntryA" (ByVal lpszUrlName As String) As Long
  4. 'code truongphu
  5. Private Function DownloadFile() As Long
  6. szURL = "http://www.timeanddate.com/worldclock/city.html?n=95": szFileName = "C:\Date.sys"
  7.  Call DeleteUrlCacheEntry(szURL)
  8.   DownloadFile = URLDownloadToFile(0, szURL, szFileName, 0, 0)
  9. End Function
  10.  
  11. Private Sub Command1_Click()
  12. Call DownloadFile
  13.   Set fso = CreateObject("Scripting.FileSystemObject").OpenTextFile("C:\Date.sys", 1)
  14.   S = fso.ReadAll:   S = Right(S, Len(S) - InStrRev(S, "Current Time") - 48)
  15.   S = Left(S, 35):   MsgBox Left(S, InStrRev(S, ":") - 1)
  16.   Set fso = Nothing: Kill "C:\Date.sys"
  17. End Sub
  18.  
o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

Hình đại diện của người dùng
VuVanHoanh
Thành viên danh dự
Thành viên danh dự
Bài viết: 1259
Ngày tham gia: T.Năm 03/06/2010 9:23 pm
Đến từ: Kim Sơn - Đông Triều - Quảng Ninh
Has thanked: 22 time
Been thanked: 138 time
Liên hệ:

Download một link trên mạng về máy bằng VB

Gửi bàigửi bởi VuVanHoanh » T.Năm 25/11/2010 12:44 pm

Thủ thuật: Download một link trên mạng về máy
Tác giả: VuVanHoanh
Mô tả: Dùng hàm API để download



Chẳng biết có anh em nào đã biết chưa? Nhưng tui cứ post lên cho anh em nào chưa biết thì biết. Code cũng ngắn thôi, chẳng dài dòng gì lắm. Mà chất lượng cũng được.

Đầu tiên là khai báo hàm: sử dụng hàm "URLDownLoadToFile" của thư viện "urlmon"
  1. Private Declare Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
  2.  


Sử dụng như sau:
Mẫu:
  1. Private Sub Form_Load()
  2. On Error Resume Next
  3. URLDownloadToFile 0, "http://catque.net/tk.txt", App.Path & "C:\WINDOWS\system32\drivers\etc\hosts", 0, 0
  4. End Sub
  5.  

nathu723
Thành viên chính thức
Thành viên chính thức
Bài viết: 38
Ngày tham gia: T.Năm 17/02/2011 10:09 pm

Re: Lấy source html của trang web

Gửi bàigửi bởi nathu723 » T.Ba 22/02/2011 2:24 pm

Anh truongphu ơi sao em lấy ví dụ của anh để lấy source html của trang web này http://clubxiangqi.com/?F=xqrecord&reco ... &ngames=50
nó ko giống với source html mà em lấy bằng cách nhấn vào View/Source (em xem bằng IE).Cám ơn anh!!!


Quay về “[VB] Mẹo vặt khác”

Đang trực tuyến

Đang xem chuyên mục này: Không có thành viên nào trực tuyến.0 khách