以下是爬虫经常用到的库
请求库
1. requests
requests库应该是现在做爬虫最火最实用的库了,非常的人性化。有关于它的使用我之前也写过一篇文章 一起看看Python之Requests库 ,大家可以去看一下。
2.urllib3
urllib3是一个非常强大的http请求库,提供一系列的 *** 作URL的功能。
3.selenium
自动化测试工具。一个调用浏览器的 driver,通过这个库你可以直接调用浏览器完成某些 *** 作,比如输入验证码。
对于这个库并非只是Python才能用,像JAVA、Python、C#等都能够使用selenium这个库
4.aiohttp
基于 asyncio 实现的 HTTP 框架。异步 *** 作借助于 async/await 关键字,使用异步库进行数据抓取,可以大大提高效率。
这个属于进阶爬虫时候必须掌握的异步库。有关于aiohttp的详细 *** 作,可以去官方文档:https://aiohttp.readthedocs.io/en/stable/
Python学习网- 专业的python自学、交流公益平台!
解析库
1、beautifulsoup
html 和 XML 的解析,从网页中提取信息,同时拥有强大的API和多样解析方式。一个我经常使用的解析库,对于html的解析是非常的好用。对于写爬虫的人来说这也是必须掌握的库。
2、lxml
支持HTML和XML的解析,支持XPath解析方式,而且解析效率非常高。
3、pyquery
jQuery 的 Python 实现,能够以 jQuery 的语法来 *** 作解析 HTML 文档,易用性和解析速度都很好。
数据存储
1、pymysql
官方文档:https://pymysql.readthedocs.io/en/latest/
一个纯 Python 实现的 MySQL 客户端 *** 作库。非常的实用、非常的简单。
2、pymongo
官方文档:https://api.mongodb.com/python/
顾名思义,一个用于直接连接 mongodb 数据库进行查询 *** 作的库。
3、redisdump
redis-dump是将redis和json互转的工具;redis-dump是基于ruby开发,需要ruby环境,而且新版本的redis-dump要求2.2.2以上的ruby版本,centos中yum只能安装2.0版本的ruby。需要先安装ruby的管理工具rvm安装高版本的ruby。
实现无人机飞行的程序可以分为以下几个步骤:连接无人机:通过无人机的 API 或 SDK 连接到无人机。
设置起飞点和降落点:输入起飞点和降落点的 GPS 坐标,通过 API 或 SDK 进行设置。
安排航线:根据航线规划要求,输入无人机需要飞行的航线点集合,设置无人机航线。
启动无人机:通过 API 或 SDK 启动无人机,使其开始执行航线。
飞行过程中监控:在无人机飞行过程中,通过无人机的传感器和 GPS 定位信息实时监测其飞行状态和位置。
任务结束和返航:当无人机完成任务后,通过 API 或 SDK 进行返航,并在到达降落点后进行安全降落。
下面是一个简单的示例代码:
scss
# 引入无人机 API 或 SDK
import drone_sdk
# 连接无人机
drone = drone_sdk.connect()
# 设置起飞点和降落点
takeoff_point = (lat, lon, alt)
landing_point = (lat, lon, alt)
drone.set_takeoff_point(takeoff_point)
drone.set_landing_point(landing_point)
# 安排航线
waypoints = [(lat1, lon1, alt1), (lat2, lon2, alt2), ...]
drone.set_waypoints(waypoints)
# 启动无人机
drone.takeoff()
drone.start_mission()
# 飞行过程中监控
while drone.is_flying():
current_position = drone.get_position()
current_status = drone.get_status()
# 在这里添加你的监控逻辑
# 任务结束和返航
drone.return_to_home()
drone.land()
需要注意的是,无人机的 API 或 SDK 可能会因品牌和型号的不同而有所区别,以上代码仅供参考。
按照题目要求编写的求圆面积小于100的最大整数半径的Python程序如下
r=0
s=0
while s<100:
r+=1
s=3.14*r*r
print("圆面积小于100的最大整数半径为{}".format(r-1))
源代码(注意源代码的缩进)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)