【问题标题】:Site scraping: why am I getting DNS issues after multiple hits?网站抓取:为什么在多次点击后出现 DNS 问题?
【发布时间】:2015-03-16 13:01:15
【问题描述】:

我使用在 .net 4.5 上运行的 C# 控制台应用程序随机每 50-90 秒抓取一个站点以获取数据。我向网站发布了几个值,并根据返回的值启动了一些其他过程。问题是在大约一千次点击之后,我得到了一个看起来像 DNS 错误的东西。在尝试修复它之前,我试图首先找出问题的根源。以下是我在日志中看到的一些错误:

  1. 无法解析远程名称
  2. 无法连接到远程服务器
  3. 解析值时遇到意外字符
  4. 无法从传输连接中读取数据 连接被远程主机强行关闭。
  5. 无法从已建立的传输连接读取数据 连接已被主机中的软件中止。

大约 60% 的时间我遇到了第一个错误。剩下的 40% 分配给上面列出的其余错误。这些问题是由我正在抓取的网站还是由我端的 DNS 服务器或其他原因引起的?出于所有实际目的,只要我将自动点击之间的间隔保持在我正在做的 45 秒以上,我正在抓取的网站就可以了。我下载的数据平均每次点击大约 30KB。请帮助我了解可能出现的问题以及我可以尝试解决的问题。

【问题讨论】:

  • 如果您以 50 到 90 秒的间隔访问该站点,我会很惊讶地看到 DNS 错误。 DNS 条目应在本地缓存。正如克林特在他的回答中所建议的那样,该网站可能会阻止您。也有可能您未能清理某些资源,并且在大约 1,000 次点击后,您的程序遇到了资源耗尽。

标签: c#-4.0 web web-scraping screen-scraping


【解决方案1】:

我会说您正在运行一个自动化系统,该系统旨在保护网站免受 DDoS 攻击 http://en.wikipedia.org/wiki/Denial-of-service_attack

它发现您的同一个 IP 地址在很短的时间内反复访问它,并且只是阻止了您对最终服务器的解析。

【讨论】:

    猜你喜欢
    • 2019-08-21
    • 1970-01-01
    • 1970-01-01
    • 2019-02-13
    • 1970-01-01
    • 2017-11-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多