Python挑战(5)

有这么一个网站“http://www.pythonchallenge.com/”,里面有33个使用python去完成的挑战,通过这些挑战可以令我们更熟悉python。今天我们来挑战第5关。第5关网址:http://www.pythonchallenge.com/pc/def/linkedlist.php

这一关居然什么提示都没有!提示难道又藏在网页代码里?按F12键打开看一下。

英文意思是“urllib可能会有帮助,不要什么都不尝试,因为它永远不会结束。400次就够了”(urllib是python自带的访问网址的库)。emmm不知道有什么用。但是鼠标移到图片上面的时候,好像可以点击,点击一下看看。

点击之后的网页只有一句话“and the next nothing is 44827”,翻译成中文的意思是“下一个nothing是44827”。在网址栏的有nothing这个参数,应该是把网址栏里的12345换成44827。试了下确实成功了,但是还是类似的文字,只是数字改变了。

再把提示的数字输进去一下试试。

多了几个红色的单词,意思是“你的手一定累了”。。。确实累了QAQ。再试了几次改变输入的数字,都是这样的形式。。。这也太麻烦了吧QAQ。难怪他会说我的手累了。。。

诶!可以用requests库去自动获取网址啊!(因为我不会用urllib)思路是先获取这个网页,然后用re库获取网页里的数字,再将这个数字替换到网址里再次访问。(如果不会用requests可以到公众号看一下文章)。

嗯?突然出现了意外。网页里没有数字,而是另一句话“Yes. Divide by two and keep going.”,意思是“把数字除以2然后继续”,没办法,只能修改一下代码了。

好像又出意外了。。。因为re.search()获取的是第一个数字,所以到那个网页时就获取了错误的数字,修改一下正则表达式去获取后面的数字吧QAQ。

虽然出错了,但好像答案出来了?把“peak.html”换到网址里试试。

成功了呢~


往期精彩回顾

如何自制Python模块?

Python还能做这么有趣的事情!

(附源码)Python爬虫之豆瓣攻坚战


今天也学到了很多东西呢,明天有什么新知识呢?真期待鸭~如果喜欢文章可以关注我哦~


你可能感兴趣的:(Python挑战(5))