import requests
import pyquery def crawl_page(url: str) -> None:
headers = {
'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) \
Chrome/72.0.3626.121 Safari/537.36',
}
response = requests.get(url, headers=headers)
parse_page(response.text) def parse_page(source_code: str) -> None:
html = pyquery.PyQuery(source_code)
dd_elements = html('.board-wrapper dd')
for dd_element in dd_elements.items():
data = {
'排名': dd_element.find('i.board-index').text(),
'电影名': dd_element.find('a.image-link').attr('title'),
'主演': dd_element.find('p.star').text().split(':')[1],
'上映时间': dd_element.find('p.releasetime').text().split(':')[1],
'评分': dd_element.find('p.score').text(),
}
print(data)
save_data(data) def save_data(data: dict) -> None:
data = str(data)
with open('MaoYan.txt', 'a+', encoding='utf8') as f:
f.write(data+'\n')
return None def main():
for i in range(0, 100, 10):
url = 'https://maoyan.com/board/4?offset={}'.format(i)
crawl_page(url) if __name__ == '__main__':
main()

最新文章

  1. C#--属性详解
  2. IOS手动添加CoreData
  3. 转:中间人攻击利用框架bettercap测试
  4. 蓄水池算法(Reservoir Sampling)
  5. localStorage, localforage, web sql三者的比较
  6. 使用 IntraWeb (42) - 测试读取 SqLite (一)
  7. C++Builder及VC的库相互调用
  8. SCALA编程实例
  9. PYTHON线程知识再研习D---可重入锁
  10. Jenkins+tomcat+jdk setup
  11. 初学者易上手的SSH-hibernate04 一对一 一对多 多对多
  12. Unable to connect to MKS;Too many scoket connect attempts;giving up
  13. verilog parameter 位宽问题
  14. Oracle课程档案,第七天
  15. GoStudy——Go语言入门第一个事例程序:HelloWorld.go
  16. 并发之volatile底层原理
  17. 【转】WPF自定义控件与样式(4)-CheckBox/RadioButton自定义样式
  18. HANA 与 Oracle 12c哪一个更快
  19. SQL 2008登录的域账户与数据库服务器不再同一个域的 处理方法
  20. 【BZOJ 2337】 2337: [HNOI2011]XOR和路径(概率DP、高斯消元)

热门文章

  1. 新树莓派系统安装ROS记录
  2. 发现一个好的手机抓包工具Http Traffic
  3. 重读APUE(12)-SIGCHLD与僵尸进程
  4. Windows Form, Ok, Cancel button
  5. CodeWar打怪升级-Python篇
  6. Jmeter-app接口
  7. SOCKET原理(转载)
  8. jQuery的html()、text()和val()的使用和区别
  9. 14 Flutter仿京东商城项目 头部搜索导航布局 修改主题 修正ScreenAdapter类
  10. Build Telemetry for Distributed Services之OpenTracing项目