问题标签 [downloadstring]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
136 浏览

c# - 如何在.net中动态更新网页的viewsource

有一个名为“www.localbanya.com”的网站,我想从该网站获取 HTML 信息,他们列出产品,他们的显示结构是:

  1. 首先,他们在页面加载时显示大约 8-10 个产品,并且
  2. 稍后当用户向下滚动时,它会生成更多产品。

现在,由于这是基于 javascript 发生的,我无法使用 WebClient 获取整个页面源。

我想知道在.net 中使用 WebClient 类来检索整个页面信息或我可以用来一次获取整个页面 HTML 信息的任何其他替代方法时,有什么方法可以更新页面源。

您可以参考这里以供参考localbanya 产品页面

任何帮助将不胜感激。

0 投票
1 回答
1057 浏览

c# - WebClient() 下载字符串返回带有奇怪符号的 HTML

我在用

它返回一个 HTML,但它出现 &lt;而不是<&gt;而不是>

我该如何解决这个问题?

0 投票
3 回答
19446 浏览

c# - WebClient DownloadString 时底层连接被关闭异常

只是一段代码

我得到了例外:

System.dll 中出现“System.Net.WebException”类型的未处理异常

附加信息:基础连接已关闭:连接意外关闭。

我认为这是 .NET 中的一个错误(我使用的是 3.5),但我尝试了其他方法来获取此链接的内容(它的 rss、xml)。还没有幸运的镜头

上面的代码也不起作用,两者都抛出相同的异常

提琴手日志:

会话状态:中止。
响应实体大小:512 字节。

== FLAGS ==================
BitFlags:[ResponseGeneratedByFiddler] 0x100
X-ABORTED-WHEN:完成
X-CLIENTIP:127.0.0.1
X-CLIENTPORT:2747
X-EGRESSPORT: 2748
X-FAILSESSION-WHEN:阅读响应
X-HOSTIP:205.185.216.10
X-PROCESSINFO:willitwork.vshost:3300

== 时间信息 ============
ClientConnected: 10:29:11.706
ClientBeginRequest: 10:29:11.713
GotRequestHeaders: 10:29:11.713
ClientDoneRequest: 10:29:11.713
确定网关: 0ms
DNS 查找:164 毫秒
TCP/IP 连接:74 毫秒
HTTPS 握手: 0 毫秒服务器连接
:10:29:11.953
FiddlerBeginRequest:10:29:11.953
ServerGotRequest:10:29:11.953
ServerBeginResponse:10:29:12.372
GotResponseHeaders:00:00:00.000
ServerDoneResponse:10 :29:12.372
ClientBeginResponse: 10:29:12.385
ClientDoneResponse: 10:29:12.385

总耗时:0:00:00.672

响应在交付给客户端之前被缓冲。

== WININET 缓存信息 ============
此 URL 不存在于 WinINET 缓存中。[代码:2]
*注意:以上数据显示的是WinINET当前的缓存状态,而不是请求时的状态。
* 注意:以上数据仅显示 WinINET 的中等完整性(非保护模式)缓存​​。

另外-504,这没有意义,因为我可以通过chrome / firefox / ie从链接获取数据...

我只是用其他语言来工作,但我不得不用 C# 来做(我已经做了 2 很多代码来重写它)

我添加了一些设置,比如提琴手说

至少现在我得到 504 错误而不是“未知”,但我仍然可以通过 webbrowser 查看内容,所以 504 错误是假的

编辑:我添加时没有响应错误

但现在输出混乱且不可读

0 投票
2 回答
5101 浏览

vb.net - DownloadStringAsync 获取文本字符串?

我正在尝试创建一个 Windows Phone 7.1 应用程序,基本上是一个货币转换器。我正在使用DownloadStringAsync方法从特定网站获取包含汇率的短字符串。我在 Visual Studio 2010 中测试过,DownloadString效果很好。但不适用于电话应用程序。我需要在这里做什么?我真的无法理解它。

结束类

0 投票
1 回答
1775 浏览

powershell - Powershell 使用 gzip 通过 WebClient 和 Downloadstring() 进行下载

如果服务器接受,是否可以制作downloadstring()和使用gzip-compression

有谁知道正确的Headers.Add或我们必须添加什么?

0 投票
2 回答
1929 浏览

c# - webClient.DownloadString 中带方括号的 URL

我正在尝试从需要在 url 请求中使用方括号的网址执行 http GET - 例如:

我尝试将 webclient 编码设置为 utf8 和 ascii,并尝试将字符串声明中的方括号分别替换为 \u00b5 和 \u00b6 以直接对其进行编码,但这些方法都没有向服务器发送有效字符串. 我尝试在 downloadstring 调用中的 requestconstructor 前面放置一个 @ 符号...

我可以将引号中的内容准确复制并粘贴到网络浏览器中,并且效果很好。我可以使用我必须的代码向不需要方括号的服务器功能发出请求,这也可以。

有没有办法使用这些字符发出请求?

谢谢!

更新:我尝试了建议的代码,包括手动包含转义码和使用 Uri.EscapeDataString ,但它仍然失败。每次失败,服务器返回代码 500,如果您在网络浏览器的 url 栏中输入错误的请求,返回的代码与返回的代码相同。

我认为问题在于服务器希望这些字符不会被转义,甚至在我开始尝试在您的帮助下手动进行操作之前,webclient 可能已经自动转换它们?有没有办法让 webclient 在不编码的情况下完全按原样发送字符串?或者是否有 .encoding 属性的设置可以将 [ 和 ] 作为平面文本而不是特殊字符代码传输?这就是我在最初的努力中试图用 @ 做的事情。

更新 2 - 我加载了 Fiddler 来分析请求......而且我的诊断是正确的......当我将 url 键入 chrome fiddler 时,它显示它包括“[stuff]”。当我通过 c# 加载相同的地址时,它会显示为“%5Bstuff%5D”。所以我必须说服 c# 以我输入的方式发送 url 请求,而不是试图提供帮助并使其符合 web 标准。我不知道该怎么做。但是……我知道我需要做什么,这很重要!

0 投票
1 回答
1710 浏览

vb.net - 如何使用 VB.net 直接从 URL 读取文本?

我正在制作一个 Windows Phone 8 应用程序。我有目标位置的纬度和经度。我需要获取目标位置的两个字母 ISO 国家代码。

我正在使用以下代码来实现它。

其中 puri(在注释代码中)是字符串格式的 Web 服务的地址。

尝试注释代码时,我得到的错误是字符串无法转换为 system.uri 格式。(地址)

尝试未注释的代码时,我收到一条错误消息,指出 getresponse 不是类 system.net.webrequest() 的成员

我猜随着 .NET 的更新代码发生了变化,但我找不到任何关于该主题的最新信息。

0 投票
2 回答
603 浏览

c# - WebClient.DownloadString 结果与浏览器结果不匹配

以下代码:

代码返回:

当我在任何网络浏览器中访问该 URL 时,我得到:

有没有办法得到正确的字符串?

另外,我使用这个在线解码器,但我没有得到正确的答案: 通用在线解码器

0 投票
1 回答
397 浏览

asp.net - 路径 asp.net 和 utf 中的非法字符

我想获取网页的内容,但是当尝试访问它时显示此错误“路径中的非法字符”我的问题是我如何解决它,现在有更好的方法来获取页面的内容我使用 Windows 应用程序和 webbrowser 获取内容并且没有错误但不能在我的代码中执行

页面内容是

如果我将 url 更改为http://www.url.com/问题解决但字符不支持

我添加了这段代码,但也没有工作

client.Encoding = Encoding.UTF8

0 投票
2 回答
1180 浏览

c# - DownloadString 跳过换行符

我想从 Google Finance 导入文本数据,我使用这个 http 地址作为参数来DownloadString http://www.google.com/finance/getprices?i=1200&p=1d&f=d,o,h,l,c,v&df=cpct&q=AAPL. 但是,生成的字符串会遗漏任何换行符,因此很难解析。有任何想法吗?