Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
由于“中的URL链接,正在启动javascript函数”;浏览器";_Javascript_Excel_Wininet_Vba - Fatal编程技术网

由于“中的URL链接,正在启动javascript函数”;浏览器";

由于“中的URL链接,正在启动javascript函数”;浏览器";,javascript,excel,wininet,vba,Javascript,Excel,Wininet,Vba,我正在使用wininet从一些主页上获取源代码,然后分析这些源代码以获取一些信息。我用Excel中的VB来做这件事。 所有这些都很好,但现在我想从一个特殊的页面获取信息 我必须打开这个页面,点击一个链接,转到需要信息的那一边。 我的问题是,这个链接是一个javascript函数。所以我的问题是:是否有可能因为URL而打开一个side并启动javascript函数 我使用以下VB函数: 'API-Deklarationen: Private Declare Sub InternetCloseHa

我正在使用wininet从一些主页上获取源代码,然后分析这些源代码以获取一些信息。我用Excel中的VB来做这件事。 所有这些都很好,但现在我想从一个特殊的页面获取信息

我必须打开这个页面,点击一个链接,转到需要信息的那一边。 我的问题是,这个链接是一个javascript函数。所以我的问题是:是否有可能因为URL而打开一个side并启动javascript函数

我使用以下VB函数:

'API-Deklarationen: 
Private Declare Sub InternetCloseHandle Lib "wininet.dll" ( _ 
    ByVal hInet As Long) 
Private Declare Function InternetOpenA Lib "wininet.dll" ( _ 
    ByVal sAgent As String, ByVal lAccessType As Long, _ 
    ByVal sProxyName As String, ByVal sProxyBypass As String, _ 
    ByVal lFlags As Long) As Long 
Private Declare Function InternetOpenUrlA Lib "wininet.dll" ( _ 
    ByVal hOpen As Long, ByVal sUrl As String, _ 
    ByVal sHeaders As String, ByVal lLength As Long, _ 
    ByVal lFlags As Long, ByVal lContext As Long) As Long 
Private Declare Sub InternetReadFile Lib "wininet.dll" ( _ 
    ByVal hFile As Long, ByVal sBuffer As String, _ 
    ByVal lNumBytesToRead As Long, lNumberOfBytesRead As Long) 

'Enumeration für Internet: 
Public Enum InternetOpenType 
  IOTPreconfig = 0 
  IOTDirect = 1 
  IOTProxy = 3 
End Enum 


Public s As String 

Public Function OpenURL( _ 
    ByVal URL As String, _ 
    Optional ByVal OpenType As InternetOpenType = IOTPreconfig _ 
  ) As String 
  Const INET_RELOAD = &H80000000 
  Dim hInet As Long 
  Dim hURL As Long 
  Dim Buffer As String * 2048 
  Dim Bytes As Long 

  'Inet-Connection öffnen: 
  hInet = InternetOpenA( _ 
      "VB-Tec:INET", OpenType, _ 
      vbNullString, vbNullString, 0) 
  hURL = InternetOpenUrlA( _ 
      hInet, URL, vbNullString, 0, INET_RELOAD, 0) 

  'Daten sammeln: 
  Do 
    InternetReadFile hURL, Buffer, Len(Buffer), Bytes 
    If Bytes = 0 Then Exit Do 
    OpenURL = OpenURL & Left$(Buffer, Bytes) 
  Loop 

  'Inet-Connection schließen: 
  InternetCloseHandle hURL 
  InternetCloseHandle hInet 
End Function 

这应该是可能的。尝试使用InternetExplorer控件,它提供您所需的一切: 能够对文档进行导航和编写脚本访问