Python黑板客爬虫闯关一

http://www.heibanke.com/lesson/crawler_ex00/

这是一个练习Python爬虫的非常好的网站。

进入该网址,如图

 在网址后边输入14901后,如图

根据网页给的数字不断更新网址后的数字,直到提示进入下一关为止。分析一下大概思路:用python获取网页,然后从网页的内容中提取这个数字,再把这个数字加在网址后面继续进行以上操作。在这,我们需要requests 和 正则表达式 re 。用requests库得到html页面,用re 库匹配其中的数字。

正则表达式如下:

re.findall(r'数字是([\d]{5})', html)

全部代码如下

import requests
import re


def get_html(url):
    html = requests.get(url)
    html.raise_for_status()
    html.encoding = html.apparent_encoding
    html = html.text
    number = re.findall(r'数字是([\d]{5})', html)
    return number[0]


def main():
    url = "http://www.heibanke.com/lesson/crawler_ex00/44513"
    while True:
        try:
            num = get_html(url)
            url = "http://www.heibanke.com/lesson/crawler_ex00/" + str(num)
            print(url)
        except IndexError:
            print(num)
            break


main()

运行结果如下:即得到最后一个网页数字,输入后进入第二关

点击链接 https://blog.csdn.net/Ljt101222/article/details/81562621 进入Python黑板客爬虫闯关二

猜你喜欢

转载自blog.csdn.net/Ljt101222/article/details/81530396
今日推荐