Python爬虫+简易词云的制作

这篇博客介绍了Python的基础知识,包括语法、数据库连接和爬虫的两种实现方式:urllib+BeautifulSoup和Scrapy+xpath。此外,还涉及到了词云的制作,内容涵盖Python实训、版本、IDE以及爬虫中的数据提取和存储,适合初学者参考学习。
摘要由CSDN通过智能技术生成

写在前面

这篇博客是我在大连参加实训时所作,大部分内容为课堂知识记录,也有自己遇到的问题及解决方法,记下来方便自己查阅,也和大家一起学习ヽ(゚∀゚)メ(゚∀゚)ノ
我用的python版本:python-3.7.4
使用的IDE:PyCharm

再识Python

简介:

Python是荷兰人Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言(TAT)。89年出现第一个版本,比java早诞生,但是没火,因为是脚本语言,解释执行,运行慢。它的优点是代码量极少,算法入库,跨平台,多用于解决算法问题,是面向对象解释型的编程语言,定位是“优雅”、“明确”、“简单”。
ps:AWS亚马逊云服务是最顶尖的云服务。py可以在云服务器上运行,在硬件上弥补运行慢的问题。
其他缺点:
GIL(Global Interpreter Lock)全局解释器锁,这是一种防止多线程并发执行机器码的互斥锁,造成的后果就是Python在进行多线程任务的时候,其实是伪多线程,性能较差。
Python2和Python3的不兼容性。

应用场景:

web应用开发
服务器运维自动化脚本
科学计算、机器学习
云计算产品

Python命令行执行:

执行python hello.py运行一个.py文件,在命令行模式运行.py文件和在Python交互式环境下直接运行Python代码有所不同。Python交互式环境会把每一行Python代码的结果自动打印出来,但是直接运行Python代码却不会。
几种命令:
(终端运行)pip:python开源模块管理工具
(py命令行运行)import this:作者彩蛋(这个有意思)

基本语法:

  • 缩进必为4个空格

  • 大小写敏感

  • #为注释符号

  • 输入输出:name = input(“请输入一个数字:”);print(name)

  • py3:已经将源文件默认编码定为utf-8 py2:# -*- coding: utf-8 -*

  • 33个关键字:[‘False’, ‘None’, ‘True’, ‘and’, ‘as’, ‘assert’, ‘break’, ‘class’, ‘continue’, ‘def’, ‘del’, ‘elif’, ‘else’, ‘except’, ‘finally’, ‘for’, ‘from’, ‘global’, ‘if’, ‘import’, ‘in’, ‘is’, ‘lambda’, ‘nonlocal’, ‘not’, ‘or’, ‘pass’, ‘raise’, ‘return’, ‘try’, ‘while’, ‘with’, ‘yield’]
    查看方法:
    >>> import keyword
    >>> keyword.kwlist

  • 强类型定义语言:print(1+“2”)会编译出错,类型之间不会自动转换 int()/str() 动态语言:变量不用声明直接赋值

  • py原则上没有常量

  • 基本数据类型:Number String List列表 Tuple元组 Sets集合 Dictionary字典

  • 重要函数:使用type() 返回变量的类型,使用id() 返回对象的内存地址

  • 相等的判断:==判断值;is判断内存地址;is 用于判断两个变量引用对象是否为同一个, == 用于判断引用变量的值 是否相等

  • 数值类型:整型(int / long)、浮点型(float)、复数(complex)、布尔型(bool)

  • 空值:Python里一个特殊的值,用None表示

  • 整型字面值的表示方法有3种:十进制(常用)、 二进制(以数字“0b”开头)、八进制(以数字“0o”开头)和十六进制(以“0x”
    或“0X”开头)

  • 布尔型:其实是整型的子类型,布尔型数据只有两个取值:True和False,分别对应整型的1和0。布尔值可以用and、or和not运算。None/0/’’/[]/()/{}许多都可以转化为布尔类型。

  • 不换行输出:print(‘123123’, end=’’)

  • 注意:Python中没有++,–运算符,a+=1即可

  • 在Python中没有switch – case语句

  • 生成随机数:import random;n = random.randint(1,10)#在【1,10】范围内生成随机数

  • 注意:range()函数不包括上限的值,直接写range(5)为从0开始

  • 容器:包含其他对象的任意对象。序列(列表、元祖、字符串)、映射(字 典)、集合三类主要的容器。

  • 序列:Python的切片总是左开右闭,从数学的可以理解为[index,index),切片可以接受三个参数, [start: end:
    step]
    -Python为序

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值