python爬虫电影GUI代码
时间: 2023-09-04 12:10:34 浏览: 115
python烟花代码 (11).zip
好的,以下是一个简单的Python爬虫电影GUI程序的示例代码。这个程序使用了requests和beautifulsoup4来获取电影数据,使用Tkinter作为GUI库,并实现了一个简单的搜索功能。
```python
import requests
from bs4 import BeautifulSoup
import tkinter as tk
# 爬取电影数据
def get_movie_data():
url = 'http://www.ygdy8.net/html/gndy/dyzz/index.html'
headers = {'User-Agent': 'Mozilla/5.0'}
response = requests.get(url, headers=headers)
response.encoding = 'gb2312'
html = response.text
soup = BeautifulSoup(html, 'html.parser')
movies = []
for item in soup.select('.co_content8 ul table'):
title = item.select_one('.ulink').text
link = 'http://www.ygdy8.net' + item.select_one('.ulink')['href']
movies.append({'title': title, 'link': link})
return movies
# 创建GUI界面
def create_gui():
window = tk.Tk()
window.title('电影搜索')
window.geometry('600x400')
tk.Label(window, text='请输入电影名称:').grid(row=0, column=0)
entry = tk.Entry(window, width=50)
entry.grid(row=0, column=1, padx=10, pady=10)
result_text = tk.Text(window, width=80, height=20)
result_text.grid(row=1, column=0, columnspan=2, padx=10, pady=10)
# 搜索电影
def search_movie():
result_text.delete('1.0', tk.END) # 清空文本框
movies = get_movie_data()
keyword = entry.get()
result = []
for movie in movies:
if keyword in movie['title']:
result.append(movie)
if result:
for movie in result:
result_text.insert(tk.END, f"{movie['title']}: {movie['link']}\n")
else:
result_text.insert(tk.END, '没有找到匹配的电影!')
# 添加搜索按钮
tk.Button(window, text='搜索', command=search_movie).grid(row=0, column=2, padx=10, pady=10)
window.mainloop()
if __name__ == '__main__':
create_gui()
```
这个程序会爬取电影天堂网站的电影数据,然后在GUI界面中实现一个简单的搜索功能,用户输入电影名称后,程序会在电影数据中搜索匹配的结果并显示在文本框中。
阅读全文