本篇文章给大家谈谈影视网站html源码分享,以及对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。
爬取网页(https://movie.douban.com/top250)上的电影信息
网页分析https://movie.douban.com/top250,属于静态网页,我们所需的数据资源在网页源代码中呈现。因此,我们只需获得网页html代码进而解析取出其中某些结点(本次简单获取电影名称和引述)就可以获得想要的数据。
网页效果
每个li标签中有一部电影
我们获取每个li,再对其子节点进行查找可以得到想要的信息。
工作流程:获取网页->解析网页->打印或保存信息依赖工具:requests、BeautifulSoup、time,Pycharm或者文本编辑器、浏览器Python代码:
@Author:搞爬虫\n\n@LastModifiedby:搞爬虫\n\n库引入\n\nimportrequests\nfrombs4importBeautifulSoup\nimporttime\n\n定义获取html文档的函数\n\n39;&每一页URL的区别在于start(如:第二页URL:)\n39;?start=&34;failedtogethtml&34;&定义解析网页的函数\ndefparseHtml(text:str,temp:dict):\niftext!=&39;:\nsoup=bs(text,&39;)\ninfo_div=soup.find_all(&39;,class_=&39;)\nforeachMovieininfo_div:\n\nls=[]39;div&39;hd&39;div&39;bd&电影名称文本\nname=info_hd.a.span.text.strip()\n\t\t\t\t\t\t\t\t39;p&39;quote&定义控制台打印信息函数\n\ndefprintContent(Info:dict):\nifInfoisnotNone:\ncount=0\nprint(&34;.format(&34;,&34;))获得每一个键值对\nforkey,valueinInfo.items():\nifcount==10:\nprint(&39;)\nprint(&34;)\ncount=0\nprint(&34;.format(key,value[0]))39;nodata&主函数\ndefmain():\n网页不涉及重要信息,我们只进行少量的爬取,不进行伪装也可以\nheaders={&39;:&39;}\nresult={}\nstartUrl=&34;\nnum=input(&39;)\n\nforiinrange(eval(num)):\n\ntext=getHtml(i,startUrl,headers)\ntime.sleep(2)39;__main__':\nmain()
运行结果
改进过后可以显示电影的具体信息。完!
END,本文到此结束,如果可以帮助到大家,还望关注本站哦!