python小项目一

7-22

爬虫猫眼top100电影

参看内容:https://www.bilibili.com/video/av21857172/?p=14
https://blog.csdn.net/yaoyefengchen/article/details/79025943
1.查找单页内容
2.正则表达式使用
3.多线程抓取

查找单页内容

猫眼榜单→右键→检查

左上角箭头符号,然后选中网页内容,就大概知道所要爬取的内容对应的位置

import requests
from requests.exceptions import RequestException

def get_one_page(url):
    try:
        response = requests.get(url)
        if response.status_code == 200:
            return response.text
            return None
    except RequestException:
        return None

def main():
    url = 'http://maoyan.com/board/4'
    html = get_one_page(url)
    print(html)

if __name__ == '__main__':
    main()

然后结果就有点小尴尬了
2.PNG

稍作修改```
def get_one_page(url):
kv = {"user-agent": "Mizilla/5.0"}

try:
    rep = requests.get(url, headers=kv)
    if rep.status_code == 200:
        return rep.text
except RequestException:
    return None```运行成功

然后这个就是我第六天的文章里处理请求头修改,一般来说简单的反爬就是检查user-agent
其他的运行就都ok

正则表达式的使用

对比一下代码和要爬取的内容

pattern = re.compile('
.*?board-index.*?>(\d+).*?data-src="(.*?)".*?name">' + '(.*?).*?"star">(.*?)

.*?releasetime">(.*?)

' + '.*?integer">(.*?).*?fraction">(.*?).*?
', re.S)
10 魂断蓝桥

魂断蓝桥

主演:费雯·丽,罗伯特·泰勒,露塞尔·沃特森

上映时间:1940-05-17(美国)

9.2

然后其实自己正则表达式也不太熟悉,要好好研究一下,把之前文章的链接找出来看看

多线程抓取

多线程抓取异步主要是为了加快抓取速度
目前也不是很了解,就找些资料看看
https://blog.csdn.net/cymy001/article/details/78218024
https://blog.csdn.net/ztf312/article/details/78858512

你可能感兴趣的:(python小项目一)