Python 爬虫零基础教程(4):获取电影天堂最新电影名称


效果图

Python 爬虫零基础教程(4):获取电影天堂最新电影名称_第1张图片



电影天堂

Python 爬虫零基础教程(4):获取电影天堂最新电影名称_第2张图片


代码:

#coding:utf-8
# Filename: print_movies_name.py
# 获取电影天堂最新电影资源名称

import re
import requests


user_agent='Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_1)'
headers={"User-Agent": user_agent}

# 定义函数
def get_name():
    url = 'https://www.dytt8.net/'
    data = requests.get(url, headers = headers).content
    # 把 data 转码
    data1 = data.decode('gbk','ignore').encode('utf-8')
    names = re.findall("最新电影下载]




知识点


函数

函数就是把一段代码写在一起,完成某项特定任务。给这段代码起个名,之后调用这个函数名,就可以运行这段代码。

函数的好处是一次编写可反复使用。

函数的基本形式如下:

def 函数名(参数):
    函数体

Python 定义函数用 def 语句,依次写出函数名、括号、括号中的参数和冒号 :,然后,在缩进块中编写函数体。函数可以没有参数。示例:

# 没参数的函数
def say_hello():
    print 'Hello World!'
    
# 有参数的函数
def say_hello2(name):
    print('hello ' + name)


函数的返回值

多数函数运行之后会返回一个结果,这个结果就是返回值。函数的返回值用 return 语句返回。

# 定义函数,函数名为 get_data
def get_data():
    url = 'https://www.dytt8.net/'
    data = requests.get(url, headers = headers).content
    # 返回网页数据 data
    return data


函数的调用

函数调用遵循先定义后调用的原则。

调用方法是在代码中写出 函数名+括号+参数。示例:

# 运行函数get_name()
get_name()

# 运行函数get_name(),把运行结果赋值给 names
names = get_name()


字符串的编码

如果在 Python2 中使用中文,就需要在代码首行或第2行写上

#coding:utf-8

这行注释是为了告诉Python解释器,按照UTF-8编码格式读取源代码。


我们还需要将 requests.get 得到的数据转换为 utf-8 编码格式

Python2 使用unicode类型作为编码的基础类型。因此在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码格式的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码格式。

     decode              encode
str ---------> unicode --------->str
data1 = data.decode('gbk','ignore').encode('utf-8')
# 字符集 GBK 兼容 GB2312
# 先将gbk型转换为 unicode,再将 nnicode 转换为 utf-8
# 'ignore' 表示忽略有异常的编码,仅显示有效的编码

转码的时候一定要先搞明白,字符串是什么编码格式。查看网页编码方式:

查看网页源代码,charset= 后面的就是。




这是教程的第五篇了,是不是感觉啰嗦且无趣。

刚开始我们以详细为主,后面会加快速度,并增加有趣的东西。



教程目录:
0.《简介及准备》
1.《爬单个图片》
2.《下载一组网页上的图片》
3.《输出一个网页上的文字》
4.《获取电影天堂最新电影名称》
5.《糗事百科爬虫》

20181130

你可能感兴趣的:(Python 爬虫零基础教程(4):获取电影天堂最新电影名称)