修改:
(1)修改了结果中存在乱码的问题;

# coding=utf-8
import requests
from bs4 import BeautifulSoup
import time
import csvdef getHtml(url):headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:56.0) Gecko/20100101 Firefox/56.0'}page = requests.get(url, headers=headers)page.encoding = "gb2312"  #注意点   html = page.text          #注意点#print(html)soup = BeautifulSoup(html, 'html.parser')for li in soup.find_all('div', class_="co_content8"):for url_info in li.find_all('a', class_="ulink"):moviename= url_info.get_text()url_1= 'http://www.dytt8.net' + url_info['href']#return moviename#return url_1#print(moviename)#print(url_1)#详情页req2 = requests.get(url_1, headers=headers)#print(req2.encoding)   #ISO-8859-1       #查看网页返回的字符集类型#print(req2.apparent_encoding)  #GB2312   #自动判断字符集类型req2.encoding = "gb2312"#content2 = req2.content  #注意区别(.content和.text)content2 = req2.textsoup = BeautifulSoup(content2, 'html.parser')for td in soup.find_all('td', attrs={'style': 'WORD-WRAP: break-word'}):for url_2 in td.find_all('a'):#print(req2.apparent_encoding)#url_3 = url_2['href']#url_3 = url_2.texturl_3=url_2.stringurl_3.encoding = 'gbk'  #注意点#print(url_3)#print(url_2.string)item = {  # 将获取的结果存储为字典"moviename": moviename,"movielink": url_1,"ftplink": url_3}print(item)save_result(item)  # 每次获取一个结果后,存储一次item.clear()  # 存储后清空字典,为下次存储做准备
#存储
def save_result(item):#保存在TXT#with open('result.txt','a ')as f:#f.write(json.dumps(content) + '\n')#f.close()#保存在csv中'''with open('dy.csv', 'a', newline='') as csvfile:  # 写入表头writer = csv.writer(csvfile)writer.writerow(['name', 'link', 'link3'])with open('dy.csv', 'a', newline='',encoding='utf-8') as csvfile:  # 打开一个csv文件,用于存储fieldnames = ['name', 'link','link3']writer = csv.DictWriter(csvfile, fieldnames=fieldnames)writer.writerow(item)'''with open('dy.csv', 'a', newline='',encoding='utf-8') as csvfile:  # 写入表头fieldnames = ['moviename', 'movielink', 'ftplink']writer = csv.DictWriter(csvfile, fieldnames=fieldnames)writer.writerow(item)
def main():#url = "https://www.dytt8.net/html/gndy/dyzz/index.html"#getHtml(url)#翻页1'''urls = ['https://www.dytt8.net/html/gndy/dyzz/list_23_1.html','https://www.dytt8.net/html/gndy/dyzz/list_23_2.html']for url in urls:getHtml(url)time.sleep(2)'''#翻页2for i in range(1,4):print('正在访问第'+format(i)+'页')url ='https://www.dytt8.net/html/gndy/dyzz/list_23_'+ str(i)+'.html'getHtml(url)time.sleep(3)
if __name__ == '__main__':main()

BS4爬取电影天堂的下载地址并保存至csv文件(一)相关推荐

  1. BS4爬取电影天堂的下载地址并保存至csv文件

    思路:BS4爬取电影天堂中最新电影名称及下一级链接中的下载地址,结果保存至csv文件 存在问题及需要完善(恳请各位大神提供帮助): (1)采集结果中的下载链接存在乱码: (2)代码需要优化. # co ...

  2. python爬取电影天堂的下载链接

    python爬取电影天堂dytt8的下载链接 电影天堂下载链接都是magnet的,搞下来想下就下没有广告 建一个main.py 一个一个挨着去爬肯定慢啊,建一个多线程的去爬 mui.py 多线程有可能 ...

  3. 爬取去哪儿网旅游数据并且保存为csv文件

    参考用Python分析元旦旅游热门城市,告诉你哪些景点性价比更高''一文,我们可以到去哪儿网站上爬取某个城市,比如厦门的旅游数据,并且在此基础上进行数据分析.下面简单总结一下爬取的过程. 一.获取js ...

  4. Scrapy 简单爬取厨房网站菜谱清单,并将结果保存为csv文件

    链接:http://www.xiachufang.com/explore/ from scrapy import Request from scrapy.spiders import Spidercl ...

  5. python爬取电影天堂新片精品模块电影列表,并用迅雷下载

    python版本是3.6.5,上代码: # 爬取电影天堂 from selenium import webdriver import requests from bs4 import Beautifu ...

  6. 爬虫学习(一)---爬取电影天堂下载链接

    欢迎加入python学习交流群 667279387 爬虫学习 爬虫学习(一)-爬取电影天堂下载链接 爬虫学习(二)–爬取360应用市场app信息 主要利用了python3.5 requests,Bea ...

  7. 爬取电影天堂最新电影的名称和下载链接

    此次的目标是爬取电影天堂最新200页的最新电影的电影名称和下载链接,电影的下载链接在二级页面,所以需要先匹配一级页面的所有链接,然后逐个请求二级页面,代码如下: """爬 ...

  8. scrapy初步-简单静态爬虫(爬取电影天堂所有电影)

    之前用java写过一个简单的爬取电影天堂信息的爬虫,后来发现用python写这种简单的爬虫程序更简单,异步网络框架在不使用多线程和多进程的情况下也能增加爬取的速度,目前刚开始学scrapy,用这个写了 ...

  9. 使用 beautifulsoup4 爬取 电影天堂IMB 评分8.0以上的 欧美电影

    一.目的: 个人比较喜欢看欧美电影,最近刚学了爬虫,所以敲了这个程序 来爬取 电影天堂IMB 评分8.0以上的 欧美电影  跟大家分享一下. 二.爬取电影天堂需要掌握的基本技能: 1.熟悉python ...

最新文章

  1. 数据库插入时,标识列插入显式值
  2. python中的format什么意思中文-Python中format()格式输出全解
  3. C# 7编程模式与实践
  4. Docker学习笔记之保存和共享镜像
  5. 学习Python一定要知道的在定义变量中的三个特征
  6. Codeforces 484B Maximum Value(高效+二分)
  7. 【REST SOAP】REST和SOAP Web Service的区别比较
  8. OpenCV4Android JavaCameraView实现
  9. CSS属性总结之background
  10. android工程中的软件,通过Android Studio创建Android应用程序(附带解析)
  11. Django Python Web应用程序框架简介
  12. python修改散点图中点的颜色_更改散点图中不同虚拟值的点的颜色 - python
  13. creo JAVA,Creo JAVA二次开发全套视频教程
  14. 超级终端之——MobaXterm
  15. 前端javascript解压zip文件[zip.js] 附上可用demo
  16. html在搜索按钮中加放大镜,用 CSS3 画心形和搜索放大镜图标
  17. 晒晒我的“无法操作”的“发财计划”
  18. 计算机del键作用,计算机里的英文字母“DEL”键是干什么用的
  19. 2018北京小学生信息学科普竞赛试题点评
  20. 网络异常处理,ping测试报:一般故障

热门文章

  1. Windows下双显示器截屏方法
  2. “纸上得来终觉浅,觉知此事要躬行”——博客起始
  3. Quantinuum将与三井物产开展量子计算研究合作
  4. Webmail攻防实战
  5. 手机端自适应遇到的问题 页面缩放不正常(使用的是flexible.js)
  6. leetcode_91.解码方法
  7. OpenGL入门学习[三]
  8. gnu make 手册 学习笔记 C语言 / C++ 构建工具 part.5 函数 控制语句
  9. ACP敏捷9.敏捷应用场景
  10. linux ubuntu环境下 android jdk sdk eclipse adt 以及手机连接无法识别的解决方法