局域网对战版俄罗斯方块:Java课程设计展示

版权申诉
0 下载量 19 浏览量 更新于2024-10-17 收藏 32KB RAR 举报
资源摘要信息:"哇,这个标题和描述非常有趣,它涉及到的主题包括 Java、俄罗斯方块以及一个课程设计作品。我们可以详细分析每一个元素,来获取更深层次的知识点。" 首先,我们来解析标题 "wow.rar_java 俄罗斯方块 课程设计_oppgame": - **wow**: 这个词在这里可能是一个感叹词,表达了对完成作品的自豪和满足感。在IT领域,这个词汇也可能用来形容一个令人惊叹的项目或成果。 - **rar**: 这是一种常见的压缩文件格式,通常用于打包和压缩多个文件,以方便传输和存储。这表明文件已经被压缩,用户需要使用相应的解压软件(如WinRAR)来打开和查看文件内容。 - **java**: 显然是指Java编程语言,它是一种广泛用于开发各种应用程序(包括桌面、服务器端、移动和Web应用程序)的高级编程语言。 - **俄罗斯方块**: 俄罗斯方块是一款经典的电子游戏,玩家需要移动、旋转和放置一系列下落的方块,以形成水平线并消除它们以获得分数。 - **课程设计**: 这通常是指在教学课程中,学生为了完成课程要求而设计和实现一个项目或程序的活动。 - **oppgame**: 这个词可能是指游戏项目的名称,或者是项目相关的代码库或资源标识符。 接下来,我们来深入分析描述内容:"俄罗斯方块局域网对战版 课程设计作品,可以局域网对战,方块的产生和动态处理参照一位前人的设计。" - **俄罗斯方块局域网对战版**: 这意味着设计的俄罗斯方块游戏支持局域网内的多人对战功能。这要求游戏设计必须包括网络通信模块,以允许玩家之间在同一个局域网内连接和交换游戏数据。 - **课程设计作品**: 这强调了作品的教育背景,可能是在计算机科学、软件工程或者游戏开发等课程中完成的一个项目。 - **可以局域网对战**: 这说明游戏至少具备了两个玩家通过局域网进行比赛的能力。在技术上,这可能涉及到Java网络编程的知识,包括套接字编程、多线程处理以及客户端-服务器架构。 - **方块的产生和动态处理参照一位前人的设计**: 这表明开发过程中参考了其他人的设计思路或代码实现。在学术和实践中,这是常见的一种做法,既是对前人工作的尊重,也可能是为了学习和改进现有的解决方案。 最后,我们看标签和文件列表: - **标签**: "java_俄罗斯方块_课程设计 oppgame" 这些标签进一步强调了与Java、俄罗斯方块游戏和课程设计相关的项目,以及与 "oppgame" 的关联。 - **文件名称列表**: 仅提供了 "wow" 一个名称。由于这是一个压缩包,这个名称可能是一个占位符,真正的文件列表可能需要在解压后查看。 结合以上分析,我们可以得出相关的知识点,包括但不限于: - Java编程语言的基础知识和高级特性。 - 游戏开发的基本概念,尤其是与俄罗斯方块这类经典游戏相关的设计模式。 - 网络编程,特别是Java中的Socket编程以及实现客户端-服务器架构。 - 多线程编程,以支持网络游戏中多个客户端同时运行的需求。 - 前人设计的参考,包括如何学习和引用他人的工作,以及在此基础上进行创新和改进。 - 局域网对战游戏的实现,包括网络通信机制和同步问题的解决策略。 以上知识点的深入理解和应用,对于任何希望进入游戏开发领域的学生或开发者来说都是至关重要的。

from bs4 import BeautifulSoup import pandas as pd import requests import time # df = pd.read_csv('playlist.csv', header=None,error_bad_lines=False, names=['url', 'title', 'play', 'user']) df = to_csv('playlist.csv', header=None, names=['url', 'title', 'play', 'user'], error_bad_lines=False) headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36' } for i in df['url']: time.sleep(2) url = 'https://music.163.com' + i response = requests.get(url=url, headers=headers) html = response.text soup = BeautifulSoup(html, 'html.parser') # 获取歌单标题 title = soup.select('h2')[0].get_text().replace(',', ',') # 获取标签 tags = [] tags_message = soup.select('.u-tag i') for p in tags_message: tags.append(p.get_text()) # 对标签进行格式化 if len(tags) > 1: tag = '-'.join(tags) else: tag = tags[0] # 获取歌单介绍 if soup.select('#album-desc-more'): text = soup.select('#album-desc-more')[0].get_text().replace('\n', '').replace(',', ',') else: text = '无' # 获取歌单收藏量 collection = soup.select('#content-operation i')[1].get_text().replace('(', '').replace(')', '') # 歌单播放量 play = soup.select('.s-fc6')[0].get_text() # 歌单内歌曲数 songs = soup.select('#playlist-track-count')[0].get_text() # 歌单评论数 comments = soup.select('#cnt_comment_count')[0].get_text() # 输出歌单详情页信息 print(title, tag, text, collection, play, songs, comments) # 将详情页信息写入CSV文件中 with open('music_message.csv', 'a+', encoding='utf-8-sig') as f: f.write(title + ',' + tag + ',' + text + ',' + collection + ',' + play + ',' + songs + ',' + comments + '\n') # 获取歌单内歌曲名称 li = soup.select('.f-hide li a') for j in li: with open('music_name.csv', 'a+', encoding='utf-8-sig') as f: f.write(j.get_text() + '\n')出错 name 'to_csv' is not defined

2023-06-13 上传

import os import time import platform from selenium import webdriver as webdriver1 from selenium.webdriver.ie.options import Options from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from config import global_wait,root_url,use_edge,iedriver_path,edgedriver_path,chromedriver_path from public.basiclogger import LOGGING class BaseCase(object): '''基础用例''' def get_web_driver(self,url,data=None,browser='ie'): if browser=='chrome': #if platform.system()=="Windows": # os.system(r'taskkill /f /im chrome.exe') #else: # os.system(r"ps aux |grep chrome|awk '{print $2}'|xargs -i kill {}") options = webdriver1.ChromeOptions() options.add_experimental_option('excludeSwitches', ['enable-logging']) self.driver = webdriver1.Chrome(executable_path=chromedriver_path,options=options) self.driver.get(url) self.driver.maximize_window() self.driver.implicitly_wait(global_wait) else: #启动IE之前先杀死电脑上所有的IE if use_edge: os.system(r'taskkill /f /im msedge.exe') else: os.system(r'taskkill /f /im iexplore.exe') if use_edge: file1=edgedriver_path else: file1=iedriver_path options = Options() options.ignore_protected_mode_settings = True options.ignore_zoom_level = True if use_edge: options.attach_to_edge_chrome = True options.edge_executable_path = r"C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe" else: options.add_argument('--user-agent="Mozilla/5.0 (Windows NT 10.0; WOW64; Trident/7.0; rv:11.0) like Gecko"') self.driver=webdriver1.Ie(executable_path=file1,options=options) self.driver.get(url) self.driver.maximize_window() self.driver.implicitly_wait(global_wait) def get_logger(self): #创建日志文件名 filename=self.data["case_name"]+'_'+time.strftime("%Y-%m-%d_%H-%M-%S") #保存连接 filename1=os.path.join(r'test_log',filename+r'.log') LOGGING1=LOGGING(log_name=filename,log_dir="test_log") self.logger=LOGGING1.logObject self.LOGGER=LOGGING1

2023-05-30 上传

import requests from bs4 import BeautifulSoup import openpyxl class LianJiaSpider(): def __init__(self): self.url = 'https://bj.lianjia.com/ershoufang/pg{0}/' self.headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.131 Safari/537.36 SLBrowser/8.0.0.12022 SLBChan/109'} def send_request(self, url): resp = requests.get(url, headers=self.headers) if resp.status_code == 200: return resp def parse_html(self, resp): lst = [] html = resp.text bs = BeautifulSoup(html, 'lxml') ul = bs.find('ul', class_='sellListContent') li_list = ul.find_all('li') for item in li_list: title = item.find('div', class_='title').text positionInfo = item.find('div', class_='positionInfo').text address = item.find('div', class_='address').text followInfo = item.find('div', class_='followInfo').text tag = item.find('div', class_='tag').text totalPrice = item.find('div', class_='totalPrice totalPrice2').text unitPrice = item.find('div', class_='unitPrice').text # print(unitPrice) lst.append((title, positionInfo, address, followInfo, tag, totalPrice, unitPrice)) print(lst) self.save(lst) def save(self, lst): wb = openpyxl.Workbook() sheet = wb.active for row in lst: sheet.append(row) continue wb.save('D:/爬虫/链家.csv') def start(self): for i in range(1, 5): full_url = self.url.format(i) resp = self.send_request(full_url) #print(resp.text) self.parse_html(resp) if __name__ == '__main__': lianjia = LianJiaSpider() lianjia.start()使用以上代码爬取数据保存到文件中只显示最后一页30条数据,前面页码的数据都被覆盖了,如何更改

2023-06-03 上传