【发布时间】:2011-10-11 09:00:25
【问题描述】:
一个网站将信息存储在 id 中,例如 http://website.com/index.php?id=1。它有大约 500,000 条记录。
我需要检索它们并将其放入数据库 (MySQL)。现在我使用 curl 并获取该信息,但速度很慢。我在一小时内只得到了大约 4,000 条记录。
我的问题,有什么方法可以更快地做到这一点?
【问题讨论】:
-
瓶颈是什么?如果连接/处理时间,也许您可以并行抓取几个(例如,运行多个脚本)。如果带宽限制,太糟糕了。
-
为什么 curl 对你来说很慢?你可能需要多线程吗?
-
你有权限抓取这个网站吗?如果您尽可能快地吸出 500,000 条记录,大多数网站运营商都不会高兴。
-
这意味着您可能希望建立并行连接,一次 10-100 个连接,以获取页面。
-
我会这么说......他们可能有防御系统,并在数百条记录后将你的 IP 列入黑名单,然后你就不用桨了。
标签: php mysql optimization curl