Hej!
Jag försöker köra den här koden, men då fort jag gör det så stöter apple på ett problem "Python avslutades oväntat."
Här är koden:
Och det är så ströigt, för jag får ju inte ens ett felmeddelande.
Hjääälp!
Jag försöker köra den här koden, men då fort jag gör det så stöter apple på ett problem "Python avslutades oväntat."
Här är koden:
Kod:
from tkinter import * from tkinter import filedialog import tkinter.messagebox import urllib.request #import turtle from bs4 import BeautifulSoup import operator ######rita from collections import Counter import numpy as np import matplotlib.pyplot as plt import pandas as pd ###### #skapa klass class enskiltOrd(object): def __init__(self, ordet, antal): self.ordet = ordet self.antal = antal def __str__(self): return self.ordet + ':' + str(self.antal) #skapa disctionaryn med rakning av alla orden def rakning (text): d = {} for ord in text: if ord in d.keys(): d[ord] = d[ord] + 1 else: d[ord] = 1 return d #gor om dictionaryn till klassobjekt def transformering (dictionary): ordlista = list() for key in dictionary.keys(): temp = enskiltOrd(key,dictionary[key]) ordlista.append(temp) return ordlista def rensa(HTML): for script in HTML(["script", "style"]): script.extract() text = HTML.get_text() # get text text = HTML.get_text() return text class Program: def __init__(self, master): self.master = master master.title("Textanalys 2.0") #skapa self.inputwindow = Entry(master) self.analyzebutton = Button(master, text="Analysera", command = self.AnalyzeButton) self.vanligaordButton = Button(master, text="Fil med ord att ta bort", command = self.getfiletoRemove) #placera self.inputwindow.grid(row=0, column=1) self.analyzebutton.grid(row=0, column=2) self.vanligaordButton.grid(row=0, column=0) def getfiletoRemove(self): self.getfiletoRemovefilename = filedialog.askopenfilename(initialdir = "/Users\karl\Box Sync\_Skola\_2017\Programmeringsteknik\Labbar\L8",title = "Select file to with words to remove",filetypes = (("text files","*.txt"),("all files","*.*"))) textfile = open(self.getfiletoRemovefilename, "r") self.helatextenvanliga = textfile.read() textfile.close() def AnalyzeButton(self): inputURL = self.inputwindow.get() try: inHTML = urllib.request.urlopen(inputURL).read() #textstring = str(intext.read().decode()) # Read the content as string from the URL soup = BeautifulSoup(inHTML, "html.parser") #inHTML.close() # Close file except ValueError: tkinter.messagebox.showwarning("", "URL '" + inputURL + "' kan inte hittas.") rensadtext = rensa(soup) rensadtextsplit = rensadtext.split() inputRaknat = rakning(rensadtextsplit) ordlista = transformering(inputRaknat) sorteradordlista = sorted(ordlista, key=operator.attrgetter('antal'), reverse=True) #las in vanliga.txt helatextenvanliga = self.helatextenvanliga #gor om den till en lista av ord #helatextenvanligasplit = helatextenvanliga.split() #skapa output drawlist = list() #jamfor ord och spara de som inte ar 'vanliga' i outputlist #noter att detta gors i ordning sa orden kommer fortfarande vara #sorterade efter forekomster for item in sorteradordlista: if item.ordet not in helatextenvanliga: #split: drawlist.append(item) #sparar top 10 i=0 drawlisttop10 = list() for item in drawlist: if i < 10: drawlisttop10.append(item) i = i + 1 alphab = [] frequencies = [] for i in range(len(drawlisttop10)): alphab.append(drawlisttop10[i].ordet) frequencies.append(drawlisttop10[i].antal) pos = np.arange(len(alphab)) width = 1.0 # gives histogram aspect to the bar diagram ax = plt.axes() ax.set_xticks(pos + (width / 2)) ax.set_xticklabels(alphab) plt.bar(pos, frequencies, width, color='r') plt.show() ##drawlisttop10 innehaller de tio mest forekommande orden med #hur manga ord det ar ( #rawlisttop10[i].ordet samt drawlisttop10[i].antal ) root = Tk() my_gui = Program(root) root.mainloop()
Och det är så ströigt, för jag får ju inte ens ett felmeddelande.
Hjääälp!