- 每隔10s打开一次b站
- 循环3次结束
import webbrowser import time total_breaks = 3 break_count = 0 print ("This program started on " + time.ctime()) while (break_count < total_breaks): time.sleep(10) webbrowser.open("bilibili.com") break_count = break_count + 1
- 提取一个folder里的所有文件的文件名
- 删除数字
import os def rename_files(): #(1) get file names from a folder file_list = os.listdir(r"C:\Users\Xiney\Desktop\prank") print (file_list) saved_path = os.getcwd() print("Current Working Directory is" + saved_path) os.chdir(r"C:\Users\Xiney\Desktop\prank") #(2) for each file, rename filename for file_name in file_list: print ("Old Name - " + file_name) print ("New Name - " + file_name.translate(None, "0123456789")) os.rename(file_name, file_name.translate(None, "0123456789")) os.chdir(saved_path) rename_files()
- 画一个正方形
- 向右旋转30度
- 重复此动作一周
import turtle def draw_square(some_turtle): i = 1 while i <= 12: for x in range (0,4): some_turtle.forward(100) some_turtle.right(90) some_turtle.right (30) i += 1 def draw_art(): window = turtle.Screen() window.bgcolor("red") brad = turtle.Turtle() draw_square(brad) window.exitonclick() draw_art()
- 画一个菱形
- 向右旋转5度
- 重复此动作一周
import turtle def draw_square(some_turtle): for i in range (0,72): for x in range (0,2): some_turtle.forward(100) some_turtle.right(60) some_turtle.forward(100) some_turtle.right(120) some_turtle.right(5) def draw_art(): window = turtle.Screen() window.bgcolor("grey") brad = turtle.Turtle() draw_square(brad) window.exitonclick() draw_art()
- 打开指定txt,提取内容
- 利用Google的what do I love检查脏字
- {“response”: “true”}则代表有脏字
import urllib def read_text(): quotes = open("/Users/geniuswxy/Desktop/checktext.rtf") contents_of_file = quotes.read() print (contents_of_file) quotes.close() check_profanity(contents_of_file) def check_profanity(text_to_check): connection = urllib.urlopen("http://www.wdyl.com/profanity?q="+text_to_check) output = connection.read() print(output) connection.close() read_text()
- media.py定义了Class movie
- movie拥有__init__和show_trailer两个自带method
- entertainment_center.py用来接受movie个体的不同属性
- fresh_tomatoes.py生成html文件
import webbrowser class Movie(): def __init__(self, movie_title, movie_storyline, poster_image, trailer_youtube): self.title = movie_title self.storyline = movie_storyline self.poster_image_url = poster_image self.trailer_youtube_url = trailer_youtube def show_trailer(self): webbrowser.open(self.trailer_youtube_url)
import media import fresh_tomatoes toy_story = media.Movie("Toy Story", "If you love toys, you will love this movie!", "https://upload.wikimedia.org/wikipedia/en/1/13/Toy_Story.jpg", "https://www.youtube.com/watch?v=XSvTH668d50") #print (toy_story.storyline) avatar = media.Movie("Avatar", "Avatar 3D is the best 3D movie in the world!", "https://upload.wikimedia.org/wikipedia/en/b/b0/Avatar-Teaser-Poster.jpg", "https://www.youtube.com/watch?v=5PSNL1qE6VY") #print (avatar.storyline) spirited_away = media.Movie("Spirited Away", "Most famous Japanese Anime Movie", "https://upload.wikimedia.org/wikipedia/zh/thumb/6/61/Spirited_away.jpg/375px-Spirited_away.jpg", "https://www.youtube.com/watch?v=ByXuk9QqQkk") #spirited_away.show_trailer() movies = [toy_story, avatar, spirited_away] fresh_tomatoes.open_movies_page(movies)
import webbrowser import os import re # Styles and scripting for the page main_page_head = ''' <head> <meta charset="utf-8"> <title>Fresh Tomatoes!</title> <!-- Bootstrap 3 --> <link rel="stylesheet" href="https://netdna.bootstrapcdn.com/bootstrap/3.1.0/css/bootstrap.min.css"> <link rel="stylesheet" href="https://netdna.bootstrapcdn.com/bootstrap/3.1.0/css/bootstrap-theme.min.css"> <script src="http://code.jquery.com/jquery-1.10.1.min.js"></script> <script src="https://netdna.bootstrapcdn.com/bootstrap/3.1.0/js/bootstrap.min.js"></script> <style type="text/css" media="screen"> body { padding-top: 80px; } #trailer .modal-dialog { margin-top: 200px; width: 640px; height: 480px; } .hanging-close { position: absolute; top: -12px; right: -12px; z-index: 9001; } #trailer-video { width: 100%; height: 100%; } .movie-tile { margin-bottom: 20px; padding-top: 20px; } .movie-tile:hover { background-color: #EEE; cursor: pointer; } .scale-media { padding-bottom: 56.25%; position: relative; } .scale-media iframe { border: none; height: 100%; position: absolute; width: 100%; left: 0; top: 0; background-color: white; } </style> <script type="text/javascript" charset="utf-8"> // Pause the video when the modal is closed $(document).on('click', '.hanging-close, .modal-backdrop, .modal', function (event) { // Remove the src so the player itself gets removed, as this is the only // reliable way to ensure the video stops playing in IE $("#trailer-video-container").empty(); }); // Start playing the video whenever the trailer modal is opened $(document).on('click', '.movie-tile', function (event) { var trailerYouTubeId = $(this).attr('data-trailer-youtube-id') var sourceUrl = 'http://www.youtube.com/embed/' + trailerYouTubeId + '?autoplay=1&html5=1'; $("#trailer-video-container").empty().append($("<iframe></iframe>", { 'id': 'trailer-video', 'type': 'text-html', 'src': sourceUrl, 'frameborder': 0 })); }); // Animate in the movies when the page loads $(document).ready(function () { $('.movie-tile').hide().first().show("fast", function showNext() { $(this).next("div").show("fast", showNext); }); }); </script> </head> ''' # The main page layout and title bar main_page_content = ''' <!DOCTYPE html> <html lang="en"> <body> <!-- Trailer Video Modal --> <div class="modal" id="trailer"> <div class="modal-dialog"> <div class="modal-content"> <a href="#" class="hanging-close" data-dismiss="modal" aria-hidden="true"> <img src="https://lh5.ggpht.com/v4-628SilF0HtHuHdu5EzxD7WRqOrrTIDi_MhEG6_qkNtUK5Wg7KPkofp_VJoF7RS2LhxwEFCO1ICHZlc-o_=s0#w=24&h=24"/> </a> <div class="scale-media" id="trailer-video-container"> </div> </div> </div> </div> <!-- Main Page Content --> <div class="container"> <div class="navbar navbar-inverse navbar-fixed-top" role="navigation"> <div class="container"> <div class="navbar-header"> <a class="navbar-brand" href="#">Fresh Tomatoes Movie Trailers</a> </div> </div> </div> </div> <div class="container"> {movie_tiles} </div> </body> </html> ''' # A single movie entry html template movie_tile_content = ''' <div class="col-md-6 col-lg-4 movie-tile text-center" data-trailer-youtube-id="{trailer_youtube_id}" data-toggle="modal" data-target="#trailer"> <img src="{poster_image_url}" width="220" height="342"> <h2>{movie_title}</h2> </div> ''' def create_movie_tiles_content(movies): # The HTML content for this section of the page content = '' for movie in movies: # Extract the youtube ID from the url youtube_id_match = re.search(r'(?<=v=)[^&#]+', movie.trailer_youtube_url) youtube_id_match = youtube_id_match or re.search(r'(?<=be/)[^&#]+', movie.trailer_youtube_url) trailer_youtube_id = youtube_id_match.group(0) if youtube_id_match else None # Append the tile for the movie with its content filled in content += movie_tile_content.format( movie_title=movie.title, poster_image_url=movie.poster_image_url, trailer_youtube_id=trailer_youtube_id ) return content def open_movies_page(movies): # Create or overwrite the output file output_file = open('fresh_tomatoes.html', 'w') # Replace the placeholder for the movie tiles with the actual dynamically generated content rendered_content = main_page_content.format(movie_tiles=create_movie_tiles_content(movies)) # Output the file output_file.write(main_page_head + rendered_content) output_file.close() # open the output file in the browser url = os.path.abspath(output_file.name) webbrowser.open('file://' + url, new=2) # open in a new tab, if possible