准备工作

安装selenium 2.48.0,一定不要安装最新版本的,最新版本不支持phantomjs。

用phantomjs是因为它是单文件版。下载地址:https://phantomjs.org/download.html

ip.txt的格式是 http://test.com(可根据需求自行更改)

完整代码

#!/usr/bin/env python

# -*- coding: utf-8 -*-

# @Time : 2020/8/3 16:10

# @Author : oliver

# @File : test.py

# @Software: PyCharm

import threading

import queue

import time

from selenium import webdriver

class get_screen(threading.Thread):

def __init__(self,q):

super(get_screen,self).__init__()

self.q = q

def run(self):

while not self.q.empty():

url = self.q.get()

try:

self.getScreen(url)

except:

pass

def getScreen(self,url):

brower = webdriver.PhantomJS(executable_path=r"E:\phantomjs-2.1.1-windows\bin\phantomjs.exe")

brower.get(url=url)

brower.maximize_window()

name = url.split("//")[1]

picName = name + ".jpg"

brower.save_screenshot(picName)

brower.close()

def main():

q = queue.Queue()

thread_count =3

threads =[]

with open("ip.txt") as f:

for line in f:

line = line.strip("\n")

q.put(line)

for i in range(thread_count):

# print i

threads.append(get_screen(q))

for thread in threads:

thread.start()

for thread in threads:

thread.join()

if __name__ == '__main__':

start_time = time.time()

main()

print("截图完成,用时:%f" % (time.time() - start_time))

python多线程实现访问页面_python 多线程实现网页自动截图相关推荐

  1. python多线程实现访问页面_Python实现多线程爬虫

    最近在写爬虫程序爬取亚马逊上的评论信息,因此也自学了很多爬虫相关的知识,其实网络上已经有很多基于Python的入门爬虫程序了,所以学习起来比较方便,唯独那个多线程爬虫一直都学的不是很明白,所以就写下这 ...

  2. python可以开多少线程_python多线程详解

    python多线程详解 一.线程介绍 什么是线程 线程(Thread)也叫轻量级进程,是操作系统能够进行运算调度的最小单位,它被包涵在进程之中,是进程中的实际运作单位.线程自己不拥有系统资源,只拥有一 ...

  3. python多线程实现访问页面升级_python使用多线程不断刷新网页的方法

    本文实例讲述了python使用多线程不断刷新网页的方法.分享给大家供大家参考.具体如下: 这段代码可以开通过个线程不断刷新指定的页面,可用于刷票,增加网页访问量等等,不用再去按F5了 import t ...

  4. python线程安全的计数器_Python多线程同步Lock、RLock、Semaphore、Event实例

    一.多线程同步 由于CPython的python解释器在单线程模式下执行,所以导致python的多线程在很多的时候并不能很好地发挥多核cpu的资源.大部分情况都推荐使用多进程. python的多线程的 ...

  5. python壁纸数据抓取_python 多线程爬取壁纸网站的示例

    基本开发环境 ・ Python 3.6 ・ Pycharm 需要导入的库 目标网页分析 网站是静态网站,没有加密,可以直接爬取 整体思路: 1.先在列表页面获取每张壁纸的详情页地址 2.在壁纸详情页面 ...

  6. python多线程执行同样代码_Python 多线程、多进程 (一)之 源码执行流程、GIL

    一.python程序的运行原理 许多时候,在执行一个python文件的时候,会发现在同一目录下会出现一个__pyc__文件夹(python3)或者.pyc后缀(python2)的文件 Python在执 ...

  7. python多线程读取数据库数据_python多线程操作MySQL数据库pymysql

    python多线程操作MySQL数据库pymysql 项目中使用多线程操作数据库提示错误:pymysql.err.InterfaceError: (0, "),原因是pymysql的exec ...

  8. python多线程写同一文件_Python多线程写文件实例

    # -*- coding: utf-8 -*- import threading ''' 多线程生成日志工具 ''' __author = [ '"yangfei" ' ] #该方 ...

  9. python多线程同步与互斥_python多线程编程(3): 使用互斥锁同步线程

    问题的提出 上一节的例子中,每个线程互相独立,相互之间没有任何关系.现在假设这样一个例子:有一个全局的计数num,每个线程获取这个全局的计数,根据num进行一些处理,然后将num加1.很容易写出这样的 ...

最新文章

  1. 时髦的互联网公司都在用什么技术?
  2. Windows Mobile使用Web Service上传和下载二进制数据流
  3. 《架构漫谈》阅读笔记
  4. 领域驱动设计DDD实战进阶第一波(十四):开发一般业务的大健康行业直销系统(订单上下文应用服务用例与接口)...
  5. 怎么统计是否内宿_第二关:描述统计分析
  6. 【转】代码里的命名规则:错误的和正确的对比
  7. FastDfs工作笔记001---Centos下安装FastDfs进行文件存储
  8. 看视频学编程之WinForm
  9. Node.js 线程你理解的可能是错的 1
  10. python逐行读取txt文件-在python 3.4上逐行读取文本文件
  11. vscode插件安装失败的解决方案
  12. 程序员面试金典——5.5整数转化
  13. Unable to compile template. Check the Errors list for details 问题解决办法
  14. 【心路历程】(NOIP 206)(HNOI 358)
  15. 数据中心运维管理方案
  16. C++小游戏——坦克大战
  17. 弹力球C语言课程设计,弹力球游戏c语言代码
  18. 防火墙的三种工作模式介绍(路由模式、透明模式(网桥)、混合模式)
  19. BCH分叉是一次站队博弈
  20. Qt5 QFileDialog中文英文交界处乱码问题

热门文章

  1. pytorch 笔记: DQN(experience replay)
  2. tkinter 笔记:列表部件 listbox (莫烦python 笔记)
  3. Python爬虫应用实战案例-xpath正则表达式使用方法,爬取精美壁纸
  4. 深度学习核心技术精讲100篇(四十九)-半监督学习在金融文本分类上的探索和实践
  5. MATLAB从入门到精通系列之MATLAB常见问题集锦-(二)
  6. SpringBoot 源码解析 —— SpringApplication 源码分析
  7. 最优化基础和机器学习优化
  8. Win7系统下装Linux操作系统详细流程(图文)
  9. linux 下Eclipse的安装
  10. Python零碎知识(2):强大的zip