1. import requests
  2. import urllib.request as ur
  3. from bs4 import BeautifulSoup
  4. import csv
  5. import threading
  6. class MovieHeven():
  7. def __init__(self):
  8. self.url="https://www.dytt8.net/html/gndy/dyzz/index.html"
  9. self.page=1
  10. self.No=1
  11. self.fobj=open("movies.csv", "wt", encoding="gbk", newline='')
  12. def spider(self):
  13. try:
  14. print("正在爬取第{}页...".format(self.page))
  15. # time.sleep(1)
  16. #获取网页链接并读取
  17. html = requests.get(self.url)#.Session()
  18. html.encoding="gbk"
  19. html=html.text
  20. #beautfulSoup装载文档
  21. root=BeautifulSoup(html,"lxml")
  22. #查找所需元素,获取tables列表
  23. tables=root.find("div",attrs={"class":"co_content8"}).find("ul").find_all("table")
  24. for table in tables:
  25. name = table.find("a").text
  26. href = "http://www.dytt8.net"+table.find("a")["href"]
  27. # 文件写入操作
  28. writer = csv.writer(self.fobj)
  29. writer.writerow([name, href])
  30. print("No:", self.No, name, href)
  31. self.No += 1
  32. # time.sleep(1)
  33. urls=root.find("div",attrs={"class":"co_content8"}).find("div",attrs={"class":"x"}).find_all("a")
  34. #寻找下一页的链接
  35. for u in urls:
  36. if u.text == "下一页":#如有下一页
  37. self.url="https://www.dytt8.net/html/gndy/dyzz/"+u["href"]
  38. print(self.url)
  39. self.page += 1
  40. self.spider()#爬取下一页
  41.  
  42. # except:#没有下一页
  43. # print("finished")
  44. # spider(url)
  45. except Exception as err:
  46. print(err)
  47. def main(self):
  48. ## threading.Thread(target=spiderA(url)).start()
  49. import time
  50. begin_time = time.time()
  51. self.spider() # 执行主程序
  52. self.fobj.close()
  53. end_time = time.time()
  54. time = end_time - begin_time
  55. m, s = divmod(round(time), 60)
  56. print("用时:{}min{}s".format(m, s))
  57.  
  58. if __name__ == '__main__':
  59. billie=MovieHeven()
  60. billie.main()

  

requests+BeautifulSoup | 爬取电影天堂全站电影资源的更多相关文章

  1. 使用requests+BeautifulSoup爬取龙族V小说

    这几天想看龙族最新版本,但是搜索半天发现 没有网站提供 下载, 我又只想下载后离线阅读(写代码已经很费眼睛了).无奈只有自己 爬取了. 这里记录一下,以后想看时,直接运行脚本 下载小说. 这里是从   ...

  2. python3 requests + BeautifulSoup 爬取阳光网投诉贴详情实例代码

    用到了requests.BeautifulSoup.urllib等,具体代码如下. # -*- coding: utf-8 -*- """ Created on Sat ...

  3. python 爬虫 requests+BeautifulSoup 爬取巨潮资讯公司概况代码实例

    第一次写一个算是比较完整的爬虫,自我感觉极差啊,代码low,效率差,也没有保存到本地文件或者数据库,强行使用了一波多线程导致数据顺序发生了变化... 贴在这里,引以为戒吧. # -*- coding: ...

  4. Python爬虫学习三------requests+BeautifulSoup爬取简单网页

    第一次第一次用MarkDown来写博客,先试试效果吧! 昨天2018俄罗斯世界杯拉开了大幕,作为一个伪球迷,当然也得为世界杯做出一点贡献啦. 于是今天就编写了一个爬虫程序将腾讯新闻下世界杯专题的相关新 ...

  5. python 爬虫(一) requests+BeautifulSoup 爬取简单网页代码示例

    以前搞偷偷摸摸的事,不对,是搞爬虫都是用urllib,不过真的是很麻烦,下面就使用requests + BeautifulSoup 爬爬简单的网页. 详细介绍都在代码中注释了,大家可以参阅. # -* ...

  6. requests+beautifulsoup爬取豆瓣图书

    使用Xpath和BeautifulSoup来解析网页可以说真的很简便. import requests from bs4 import BeautifulSoup from random import ...

  7. 爬虫系列1:Requests+Xpath 爬取豆瓣电影TOP

    爬虫1:Requests+Xpath 爬取豆瓣电影TOP [抓取]:参考前文 爬虫系列1:https://www.cnblogs.com/yizhiamumu/p/9451093.html [分页]: ...

  8. PYTHON 爬虫笔记八:利用Requests+正则表达式爬取猫眼电影top100(实战项目一)

    利用Requests+正则表达式爬取猫眼电影top100 目标站点分析 流程框架 爬虫实战 使用requests库获取top100首页: import requests def get_one_pag ...

  9. 使用Beautiful Soup爬取猫眼TOP100的电影信息

    使用Beautiful Soup爬取猫眼TOP100的电影信息,将排名.图片.电影名称.演员.时间.评分等信息,提取的结果以文件形式保存下来. import time import json impo ...

随机推荐

  1. 算法——移掉K位数字使得数值最小

    给定一个以字符串表示的非负整数 num,移除这个数中的 k 位数字,使得剩下的数字最小. leetcode 解题思路:如果这个数的各个位是递增的,那么直接从最后面开始移除一定就是最最小的:如果这个数的 ...

  2. 六、Zookeeper-开源客户端ZkClient与Curator

    ZkClient 从创建会话.创建节点.读取数据.更新数据.删除节点拉介绍ZkClient 添加依赖: pom.xml <dependency> <groupId>com.10 ...

  3. Android全面解析之由浅及深Handler消息机制

    前言 很高兴遇见你~ 欢迎阅读我的文章. 关于Handler的博客可谓是俯拾皆是,而这也是一个老生常谈的话题,可见的他非常基础,也非常重要.但很多的博客,却很少有从入门开始介绍,这在我一开始学习的时候 ...

  4. centos安装scrapy

    安装scrapy centos 7 安装scrapy报错说找不到scrapy需要的Twisted13.0以上版本? Collecting Twisted>=13.1.0 (from Scrapy ...

  5. 应用案例——高并发 WEB 服务器队列的应用

    在高并发 HTTP 反向代理服务器 Nginx 中,存在着一个跟性能息息相关的模块 - 文件缓存. 经常访问到的文件会被 nginx 从磁盘缓存到内存,这样可以极大的提高 Nginx 的并发能力,不过 ...

  6. [Python] 快速爬取当前城市所有租房网站房源及配置,一目了然

    Python爬取当前城市房源信息,以徐州为例代码效果图请看下方,其他部分请查看附件,一起学习,谢谢 # -*- coding: utf-8 -*- """ @Time : ...

  7. linux 配置本地yum源,配置国内yum源,配置epel源

    目录 一.配置本地yum源 二.配置国内yum源和epel源 一.配置本地yum源 1.挂载ISO镜像 mount -o loop /mnt/yum-iso/CentOS-7-x86_64-DVD-1 ...

  8. Android各版本迭代改动与适配集合

    前言 今天分享的面试题是: Android在版本迭代中,总会进行很多改动,那么你熟知各版本都改动了什么内容?又要怎么适配呢? Android4.4 发布ART虚拟机,提供选项可以开启. HttpURL ...

  9. js上 初识JavaScript

    1.JavaScript简介 **JavaScript ** 是什么?(重点) Js是一种专门为网页交互设计的客户端(浏览器端)的脚本语言: Js与html和css有相似之处,都在浏览器端解析: Js ...

  10. 免杀shellcode并绕过杀毒添加自启动

    https://www.wtfsec.org/posts/%E5%85%8D%E6%9D%80shellcode%E5%B9%B6%E7%BB%95%E8%BF%87%E6%9D%80%E6%AF%9 ...