php多线程抓取多个网页(使用线程和Selenium的简单代码示例:使用参数)

优采云 发布时间: 2022-03-14 07:02

  php多线程抓取多个网页(使用线程和Selenium的简单代码示例:使用参数)

  大多数时候,我必须抓取的页面数量低于 100,因此使用 for 循环,我可以在合理的时间内解析它们。但现在我有 1000 多个网页要分析。在

  在寻找实现此目标的方法时,我发现了可能有用的线程。我看过一些教程,我相信我理解一般逻辑。在

  我知道如果我有 100 个网页,我可以创建 100 个线程。不建议这样做,尤其是对于大量网页。例如,我还没有真正弄清楚如何创建 5 个线程,每个线程上有 200 个网页。在

  这是一个使用线程和 Selenium 的简单代码示例:

  import threading

from selenium import webdriver

def parse_page(page_url):

driver = webdriver.PhantomJS()

driver.get(url)

text = driver.page_source

..........

return parsed_items

def threader():

worker = q.get()

parse_page(page_url)

q.task_one()

urls = [.......]

q = Queue()

for x in range(len(urls)):

t = threading.Thread(target=threader)

t.daemon = True

t.start()

for worker in range(20):

q.put(worker)

q.join()

  我不清楚的另一件事是参数如何在线程中使用。在

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线