Python技术分享

深入浅出学习Python

Scrapy初认识

  • Scrapy是什么?

    • 是Python的一个爬虫框架,非常出名、非常强悍,你是框架,学的就是用法,当然,底层肯定使用了多进程、多线程、队列等技术
    • Scrapy是一个快速的高级Web爬网Web爬框架,用于对网站进行爬网并从其页面中提取结构化数据。它可以用于从数据挖掘到监视和自动化测试的广泛用途。
  • 安装

    1
    pip install scrapy

    安装错误(error: Microsoft Visual C++ 14.0 is required)解决:下载 Twisted 对应版本的whl文件(如:Twisted-20.3.0-cp38-cp38-win_amd64.whl),cp后面是python版本,amd64代表64位,运行命令:pip install Twisted-20.3.0-cp38-cp38-win_amd64.whl 安装 Twisted ,然后再安装scrapy即可!

阅读全文 »

线程回顾

引入

多任务,多个任务同时进行,如何解决该问题?(2种方式)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import time


def sing():
for x in range(1, 6):
print('我在唱什么')
time.sleep(1)


def dance():
for x in range(1, 6):
print('我在跳hiphop舞')
time.sleep(1)


def main():
sing()
dance()


if __name__ == '__main__':
main()

  1. 多进程:电脑上同时打开sublime、录屏、vnc服务器
  2. 多线程:
    • 在word文档中同时编辑、检查(多线程)
    • 在qq中同时语音、视频、发送消息(多线程)
阅读全文 »

安装

1
pip install requests
  • 官方文档
  • Requests 唯一的一个非转基因的 Python HTTP 库,人类可以安全享用。

用来做什么?

urllib功能相似,Requests 允许你发送纯天然,植物饲养的 HTTP/1.1 请求,无需手工劳动。你不需要手动为 URL 添加查询字串,也不需要对 POST 数据进行表单编码。Keep-alive 和 HTTP 连接池的功能是 100% 自动化的,一切动力都来自于根植在 Requests 内部的 urllib3

阅读全文 »

Selenium是什么?

  • Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7, 8, 9, 10, 11),Mozilla Firefox,Safari,Google Chrome,Opera等。这个工具的主要功能包括:测试与浏览器的兼容性 — 测试你的应用程序看是否能够很好得工作在不同浏览器和操作系统之上。测试系统功能 — 创建回归测试检验软件功能和用户需求。支持自动录制动作和自动生成 .Net、Java、Perl等不同语言的测试脚本。
  • Selenium是一个Python的一个第三方库,对外提供的接口可以操作你的浏览器,然后让浏览器完成自动化的操作。
阅读全文 »

JSONPath

JSONPath简介

  • JSONPath:是xpath在json的应用,是用来解析json数据使用的
  • XML的一个经常强调的优点是可以使用大量工具来分析、转换和有选择地从XML文档中提取数据。XPath是这些功能强大的工具之一。它可以解决以下问题:
    1. 可以在客户端上以交互方式找到数据并从JSON结构中提取数据,而无需使用特殊脚本。
    2. 可以将客户端请求的JSON数据简化为服务器上的相关部分,从而最大程度地减少服务器响应的带宽使用量。
阅读全文 »

简介

  • XPath(XML Path Language)是一种用于在XML文档中定位和选择节点的语言。它是一种基于树结构的查询语言,常用于解析和处理XML文档。XPath提供了一组用于导航和选择XML文档中节点的表达式。
  • XPath表达式由一系列路径表达式组成,用于描述节点的层次结构和关系。
  • XPath 于 1999 年 11 月 16 日 成为 W3C 标准。
  • XPath广泛应用于各种XML处理工具和库中,例如XPath可以用于解析XML文档、提取数据、遍历节点等。在Web开发中,XPath也常用于解析HTML文档,从中提取所需的数据。
阅读全文 »

bs4

Beautiful Soup是一个使从web页面获取信息变得容易的库。它位于HTML或XML解析器之上,提供了迭代、搜索和修改解析树的python风格。

阅读全文 »

正则表达式解析

正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。

阅读全文 »

post请求

  • 表单数据的处理
  • form_data = urllib.parse.urlencode(form_data).encode()
  • fiddler抓包,一个本上面有个箭头,代表就是post请求
    阅读全文 »

爬虫概念

  • 什么是爬虫?

    • 程序猿:写程序,然后去互联网上抓取数据的过程
    • 互联网:网,有好多的a链接组成的,网的节点就是每一个a链接 url(统一资源定位符)
  • 哪些语言可以实现爬虫?

    1. php,可以做,号称世界上最优美的语言,多进程、多线程支持的不好
    2. java,也可以做爬虫,人家做的很好,最主要的竞争对手,代码臃肿,重构成本大
    3. c、c++,是你能力的体现,不是良好的选择
    4. python,世界上最美丽的语言,语法简单、代码优美,学习成本低,支持的模块多,非常强大的框架 scrapy
阅读全文 »
0%