老程序员分享:python爬取电影网站信息并写入文件

简介: 老程序员分享:python爬取电影网站信息并写入文件

"

1 #

2 import //代码效果参考:https://v.youku.com/v_show/id_XNjQwMDE0OTIyOA==.html

requests

3 import re

4 from bs4 import BeautifulSoup

5 from urllib.parse import urlparse,parse_qs

6 import os

7

8

9 def get_url_content(url): //获取网站的源码

10 response=requests.get(url)

11 if response.status_code==200:

12 return response.text

13 else:

14 return False

15

16 def parse_Web_Content(content):

17 Object=BeautifulSoup(content,'html.parser')

18

19 filmName=get_film_name(Object)

20 filmCast=get_film_cast(Object)

21 filmIntro=get_film_introduction(Object)

22 filmUrl=get_film_url(Object)

23

24 film=【】

25 for i in range(len(filmName)):

26 indiv={

27 'fileName':filmName【i】,

28 'filmCast':filmCast【i】,

29 'filmIntro':filmIntro【i】,

30 'filmurl':''+filmUrl【i】

31 }

32 film.append(indiv)

3//代码效果参考:https://v.youku.com/v_show/id_XNjQwNjg1MjEyNA==.html

3 return film

34

35

36 def get_film_name(Soup):

37 Name=Soup.select("".play_info"")

38 name_list=【】

39 for i in range(len(Name)):

40 parsedName=Name【i】.a.string

41 name_list.append(parsedName)

42 return name_list

43

44 def get_film_cast(Soup):

45 Cast=Soup.find_all('p',attrs={'class':'space'})

46 film_Cast = 【】

47 for i in range(len(Cast)):

48 parsedCast=Cast【i】.text

49 film_Cast.append(parsedCast)

50 return film_Cast

51

52 def get_film_introduction(Soup):

53 Introduction=Soup.find_all('p',attrs={'class':'content'})

54 intro_list=【】

55 for i in range(len(Introduction)):

56 parsedIntro=Introduction【i】.text

57 intro_list.append(parsedIntro)

58 return intro_list

59

60 def get_film_url(Soup):

61

62 filmUrl=Soup.select("".play_info"")

63 Url_list=【】

64 for i in range(len(filmUrl)):

65 href=filmUrl【i】.a【'href'】

66 Url_list.append(href)

67 return Url_list

68

69 def writeTofile(parsedWebcontent):

70 with open('film.txt','a',encoding='utf-8') as f:

71 for i in range(len(parsedWebcontent)):

72 f.write(parsedWebcontent【i】【'fileName'】+'\t')

73 f.write(parsedWebcontent【i】【'filmCast'】 + '\t')

74 f.write(parsedWebcontent【i】【'filmIntro'】 + '\t')

75 f.write(parsedWebcontent【i】【'filmurl'】 + '\t')

76 f.write('\n')

77 f.close()

78

79

80 link=""""

81 for i in range(1,4):

82 url=link + str(i) + "".html""

83 webContent=get_url_content(url)

84

85 if webContent!=False:

86 Content=parse_Web_Content(webContent)

87 writeTofile(Content)


"
image.png
相关文章
|
1月前
|
Python
Python编程获取当前日期的所属周日期信息
Python编程获取当前日期的所属周日期信息
|
6天前
|
机器学习/深度学习 数据采集 搜索推荐
利用Python和机器学习构建电影推荐系统
利用Python和机器学习构建电影推荐系统
20 1
|
13天前
|
存储 数据采集 数据库
用 Python 爬取淘宝商品价格信息时需要注意什么?
使用 Python 爬取淘宝商品价格信息时,需注意法律和道德规范,遵守法律法规和平台规定,避免非法用途。技术上,可选择 Selenium 和 Requests 库,处理反爬措施如 IP 限制、验证码识别和请求频率控制。解析页面数据时,确定数据位置并清洗格式。数据存储可选择 CSV、Excel、JSON 或数据库,定期更新并去重。还需进行错误处理和日志记录,确保爬虫稳定运行。
|
14天前
|
数据采集 Web App开发 iOS开发
如何利用 Python 的爬虫技术获取淘宝天猫商品的价格信息?
本文介绍了使用 Python 爬虫技术获取淘宝天猫商品价格信息的两种方法。方法一使用 Selenium 模拟浏览器操作,通过定位页面元素获取价格;方法二使用 Requests 和正则表达式直接请求页面内容并提取价格。每种方法都有详细步骤和代码示例,但需注意反爬措施和法律法规。
|
1月前
|
小程序 Python
利用Python编程提取身份证的信息
利用Python编程提取身份证的信息
|
1月前
|
存储 关系型数据库 MySQL
Python写入文件内容:从入门到精通
本文详细介绍了使用Python进行文件写入的基本方法及高级技巧。从基础语法入手,讲解了如何使用`open()`函数的不同模式(如`'w'`和`'a'`)来创建或修改文件,并通过具体示例演示了`write()`和`writelines()`方法的应用。进一步探讨了利用CSV模块处理复杂数据结构的写入操作,以及在实际项目中如何批量导出数据库记录到CSV文件。最后,文章还讨论了在处理大数据集和云存储时的注意事项与优化方案。
|
16天前
|
缓存 监控 Linux
Python 实时获取Linux服务器信息
Python 实时获取Linux服务器信息
|
1月前
|
IDE 开发工具 数据安全/隐私保护
Python编程--实现用户注册信息写入excel文件
Python编程--实现用户注册信息写入excel文件
|
1月前
|
Python
用 Python 读取照片的 Exif 信息(顺便说说本人的一些想法)
用 Python 读取照片的 Exif 信息(顺便说说本人的一些想法)
52 2
|
2月前
|
Python
Python量化炒股的数据信息获取—获取沪深股市每日成交概况信息
Python量化炒股的数据信息获取—获取沪深股市每日成交概况信息