导航:首页 > 编程语言 > python爬取网速10m

python爬取网速10m

发布时间:2025-01-13 20:08:29

① 如何使用linux命令行测试网速

一、安装speedtest-cli
speedtest-cli是一个用python编写的轻量级Linux命令行工具,在Python2.4至3.4版本下均可运行。它基于Speedtest.net的基础架构来测量网络的上/下行速率。安装speedtest-cli很简单——只需要下载其Python脚本文件。
[root@localhost temp]# wget https://raw.github.com/sivel/speedtest-cli/master/speedtest_cli.py
[root@localhost temp]# chmod a+rx speedtest_cli.py
[root@localhost temp]# mv speedtest_cli.py /usr/local/bin/speedtest-cli
[root@localhost temp]# chown root:root /usr/local/bin/speedtest-cli
也可以在自己电脑上下载好 speedtest_cli.py 然后上传到服务器上。
二、使用speedtest-cli测试网速
使用speedtest-cli命令也很简单,它不需要任何参数即可工作。
[root@localhost temp]# speedtest-cli
输入这个命令后,它会自动发现离你最近的Speedtest.net服务器(地理距离),然后打印出测试的网络上/下行速率。
[root@localhost temp]# speedtest-cli
Retrieving speedtest.net configuration…
Retrieving speedtest.net server list…
Testing from China Telecom (219.135.214.145)…
Selecting best server based on latency…
Hosted by CTM Internet Services (Macau) [106.48 km]: 55.974 ms
Testing download speed………………………………….
Download: 3.15 Mbit/s
Testing upload speed…………………………………………..
Upload: 0.58 Mbit/s
测试结果说明:上行为 0.58Mbit/s 下行为 3.15 Mbit/s

② Python爬虫如何避免爬取网站访问过于频繁

一. 关于爬虫
爬虫,是一种按照一定的规则自动地抓取互联网信息的程序。本质是利用程序获取对我们有利的数据。

反爬虫,从不是将爬虫完全杜绝;而是想办法将爬虫的访问量限制在一个可接纳的范围,不要让它过于频繁。

二. 提高爬虫效率的方法
协程。采用协程,让多个爬虫一起工作,可以大幅度提高效率。

多进程。使用CPU的多个核,使用几个核就能提高几倍。

多线程。将任务分成多个,并发(交替)的执行。

分布式爬虫。让多个设备去跑同一个项目,效率也能大幅提升。

打包技术。可以将python文件打包成可执行的exe文件,让其在后台执行即可。

其他。比如,使用网速好的网络等等。

三. 反爬虫的措施
限制请求头,即request header。解决方法:我们可以填写user-agent声明自己的身份,有时还要去填写origin和referer声明请求的来源。

限制登录,即不登录就不能访问。解决方法:我们可以使用cookies和session的知识去模拟登录。

复杂的交互,比如设置“验证码”来阻拦登录。这就比较难做,解决方法1:我们用Selenium去手动输入验证码;方法2:我们用一些图像处理的库自动识别验证码(tesserocr/pytesserart/pillow)。

ip限制。如果这个IP地址,爬取网站频次太高,那么服务器就会暂时封掉来自这个IP地址的请求。 解决方法:使用time.sleep()来对爬虫的速度进行限制,建立IP代理池或者使用IPIDEA避免IP被封禁。

③ linux测试网速的工具

1、fast

是Netflix提供的一项服务,它不仅可以通过命令行来使用,而且可以直接在Web端使用:fast.com,我们可以通过以下命令来安装这个工具:

$ npm install --global fast-cli

不管是网页端还是命令行,它都提供了最基本的网络下载测速。命令行下最简单的使用方法如下:

$ fast

93 Mbps ↓

从以上结果可以看出,直接使用fast命令的话,将只返回网络下载速度。如果你也想获取网络的上传速度,则需要使用-u选项。

$ fast -u

⠧ 81 Mbps ↓ / 8.3 Mbps ↑

2、speedtest

是一个更加知名的工具。它是用Python写成的,可以使用apt或pip命令来安装。你可以在命令行下使用,也可以直接将其导入到你的 Python
项目,使用的时候,可以直接运行speedtest命令即可:

$ speedtest

Retrieving speedtest.net configuration...

Testing from Tencent cloud computing (140.143.139.14)...

Retrieving speedtest.net server list...

Selecting best server based on ping...

Hosted by Henan CMCC 5G (Zhengzhou) [9.69 km]: 28.288 ms

Testing download
speed................................................................................

Download: 56.20 Mbit/s

Testing upload
speed......................................................................................................

Upload: 1.03 Mbit/s

从运行结果可以看出,speedtest命令将直接提供上传/下载速率,测试的过程也是挺快的。你可以编写一个脚本来调用这个命令,然后定期进行网络测试,并在结果保存在一个文件或数据库,这样你就可以实时跟踪你的网络状态。

3、iperf

是一个网络性能测试工具,它可以测试TCP和UDP带宽质量,可以测量最大TCP带宽,具有多种参数和UDP特性,可以报告带宽,延迟抖动和数据包丢失。利用iperf这一特性,可以用来测试一些网络设备如路由器,防火墙,交换机等的性能。

这个工具不仅仅在Linux系统下可以用,在Mac和Windows系统同样可以使用。

如果你想测试网络带宽,则需要两台电脑。这两台电脑需要处于同样的网络,一台作为服务机,另一台作为客户机,并且二者必须都要安装
iPerf,可以通过如下命令获取服务器的IP地址:

$ ip addr show | grep inet.*brd

inet 192.168.242.128/24 brd 192.168.242.255 scope global dynamic
noprefixroute ens33

之后,我们再在服务机上启动iperf工具:

$ iperf -s

然后,我们就可以等待客户机的接入了。客户机可以使用以下命令来连上服务机:

$ iperf -c 192.168.242.128

通过几秒钟的测试,它就会返回网络传输速率及带宽。

阅读全文

与python爬取网速10m相关的资料

热点内容
怎么样的服务器地址 浏览:173
温故pdf 浏览:665
linux文件权限t 浏览:696
为什么永劫无间解压后无法打开 浏览:265
有什么可以分期的app 浏览:205
pl0语言编译程序的认识 浏览:333
如何查看服务器内核组件 浏览:655
什么赚钱app赚的钱快 浏览:932
云哟科技为什么要买服务器 浏览:657
python搭建web服务器 浏览:518
上位机是程序员么 浏览:414
20万服务器怎么样 浏览:931
光遇为什么之前没有安卓服 浏览:745
移动硬盘显示可用加密 浏览:946
python万能库开发 浏览:875
向日葵远程解压 浏览:883
androidedittext布局 浏览:320
题库管理app哪个好用 浏览:989
安卓游戏中亮度自动调节如何关闭 浏览:892
求派算法 浏览:551