
Source (link to git-repo or to original if based on someone elses unmodified work): Add the source-code for this project on opencode.net
This script looks for text or html files in the playing directory and (optionally) web reviews for the currently playing album. On success it inserts them in a new manageable box into the context browser.
To access the review search menu, move your mouse over the conTEXT icon in the lower right corner of the context browser. Here you can click a site name to start a single search, or select sites for auto-search (which will be triggered when the album changes or the script is restarted). Found reviews are stored in the file's directory by default.
Amarok 2 version: http://kde-apps.org/content/show.php?content=159427
7 years ago
2010.11.17: 2q
2010.01.09: 2p
2010.01.01: 2o
2009.04.12: 2n
2008.01.02: 2m
2007.11.02: 2l
2007.08.17: 2k
2007.02.26: 2j
2007.02.19: 2i
2007.02.04: 2h
2006.12.28: 2g
2006.12.27: 2f
2006.09.14: 2e
2006.09.05: 2d
2006.08.21: 2c
2006.08.20: 2a, 2b
q: fixed allmusic, metacritic, pitchfork, rollingstone (but they seem to remove older reviews) and laut.de
p: fixed metacritic empty pages; more progressiveworld hits;
o: fixed metacritic, progressiveworld; removed broken searches: bbc,dis,nme,stylus; funny new experimental feature: mouseover cover will show the large version
n: fixed most review sites (e.g. bbc, cduniverse, dis, pitchfork, plattentests.de, punkbands, rollingstone,...search and/or display faults)
m: fixed nme, disabled playlouder; fixed some links inside reviews; improved allmusic, bbc, dis, guardian, laut, metacritic and stylus display (e.g. no site-specific fonts anymore)
l: added cduniverse.com; fixed punkbands.com; fixed pitchfork header display
k: fixed fast scrolling for new khtml versions; fixed playlouder.com; fixed rollingstone display; fixed plattentests.de referenzen
j: Added a button to search all (or all marked) sites manually (no need to restart the script anymore); Clicking the conTEXT icon now toggles the popup menu; Removed a popup warning which appeared when playback was stopped while searching;
i: Fix/workaround for the bug that prevented conTEXT from starting (when the name of the previously displayed text file contained a foreign character);
h: added icons to the search/popup menu for opening the currently loaded text file in KDE's default application (for editing) and for deleting (trashing)
g: added graphical scroll arrows with "jump to top/bottom" functionality, improved rollingstone.com interface
f: added metacritic.com, fixed bbc.co.uk
e: small fixes for allmusic, playlouder, stylus
d: added allmusic.com
d: fixed laut.de
d: improved drownedinsound hit rate
c: for txt files:
... wrap at context browser width
... don't use monospace font
... disable the "auto-shrink box" feature for short files when in scroll mode
b: removed a call to saveCurrentPlaylist (which makes Amarok hang for large playlists and was seemingly able to kill conTEXT)
b: set a timeout of 10 seconds for search requests
b: avoid temp files to be written to home directory when KDE session is quit with Amarok still running
a: quick fix to make it work (at least not exit) with last.fm streams (you can't have more than one review at a time yet)
2006.08.19: 2
manual or automatic album review search at various sites (11 english, 2 german)
remember scrolling position on song change
links are opened in external browser (which you set in amarok configuration)
2006.06.03: 1
initial release
7 years ago
2010.11.17: 2q
2010.01.09: 2p
2010.01.01: 2o
2009.04.12: 2n
2008.01.02: 2m
2007.11.02: 2l
2007.08.17: 2k
2007.02.26: 2j
2007.02.19: 2i
2007.02.04: 2h
2006.12.28: 2g
2006.12.27: 2f
2006.09.14: 2e
2006.09.05: 2d
2006.08.21: 2c
2006.08.20: 2a, 2b
q: fixed allmusic, metacritic, pitchfork, rollingstone (but they seem to remove older reviews) and laut.de
p: fixed metacritic empty pages; more progressiveworld hits;
o: fixed metacritic, progressiveworld; removed broken searches: bbc,dis,nme,stylus; funny new experimental feature: mouseover cover will show the large version
n: fixed most review sites (e.g. bbc, cduniverse, dis, pitchfork, plattentests.de, punkbands, rollingstone,...search and/or display faults)
m: fixed nme, disabled playlouder; fixed some links inside reviews; improved allmusic, bbc, dis, guardian, laut, metacritic and stylus display (e.g. no site-specific fonts anymore)
l: added cduniverse.com; fixed punkbands.com; fixed pitchfork header display
k: fixed fast scrolling for new khtml versions; fixed playlouder.com; fixed rollingstone display; fixed plattentests.de referenzen
j: Added a button to search all (or all marked) sites manually (no need to restart the script anymore); Clicking the conTEXT icon now toggles the popup menu; Removed a popup warning which appeared when playback was stopped while searching;
i: Fix/workaround for the bug that prevented conTEXT from starting (when the name of the previously displayed text file contained a foreign character);
h: added icons to the search/popup menu for opening the currently loaded text file in KDE's default application (for editing) and for deleting (trashing)
g: added graphical scroll arrows with "jump to top/bottom" functionality, improved rollingstone.com interface
f: added metacritic.com, fixed bbc.co.uk
e: small fixes for allmusic, playlouder, stylus
d: added allmusic.com
d: fixed laut.de
d: improved drownedinsound hit rate
c: for txt files:
... wrap at context browser width
... don't use monospace font
... disable the "auto-shrink box" feature for short files when in scroll mode
b: removed a call to saveCurrentPlaylist (which makes Amarok hang for large playlists and was seemingly able to kill conTEXT)
b: set a timeout of 10 seconds for search requests
b: avoid temp files to be written to home directory when KDE session is quit with Amarok still running
a: quick fix to make it work (at least not exit) with last.fm streams (you can't have more than one review at a time yet)
2006.08.19: 2
manual or automatic album review search at various sites (11 english, 2 german)
remember scrolling position on song change
links are opened in external browser (which you set in amarok configuration)
2006.06.03: 1
initial release
ssri
10 years ago
Report
camico
10 years ago
Report
ssri
10 years ago
Report
yfph
12 years ago
Report
camico
11 years ago
Report
kdefish
11 years ago
Report
camico
7 years ago
http://kde-apps.org/content/show.php?content=159427
Report
camico
7 years ago
luckily i won't have to rewrite everything after all. but the first release will open a separate window unfortunately (just like the 'Rating statistics' script for example) because there doesn't seem to be any other way currently.
Report
yfph
11 years ago
Report
yfph
12 years ago
Report
camico
11 years ago
i'll see what i can do regarding amazon when i find the time. should be no problem.
Report
janberk
13 years ago
thanks,
janberk
Report
camico
13 years ago
Report
janberk
13 years ago
janberk
Report
Sebien
13 years ago
And a lot nicer to be able to retreive critics from the Web.
IMHO, you should contact the Amarok developers.
With their version 2.0, they are putting the context view at the center of the application, so such information can be very very handy to fill the area with more useful information, and "redicover our music".
I'm sure they will be interested to integrate this plugin by default, or at least include it in the application, even if it is not enabled by default.
Report
camico
13 years ago
Report
kdefish
14 years ago
Report
camico
14 years ago
the foreign character problem is still there though, sorry... if any python expert can help me with that, please drop me a mail
Report
kdefish
14 years ago
great work, thanks! :)
Report
kdefish
14 years ago
Traceback (most recent call last):
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 85, in run
try: self._run()
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 113, in _run
self.has_injected = self.performInjection() # do once when we start
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 288, in performInjection
jscode = self.jscode%( boxpadding, filetexts, filenames,
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128)
ERROR:ContextBrowserUpdater: Something wrong in context browser monitor, process stopped 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128) exceptions.UnicodeDecodeError
Traceback (most recent call last):
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 85, in run
try: self._run()
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 113, in _run
self.has_injected = self.performInjection() # do once when we start
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 288, in performInjection
jscode = self.jscode%( boxpadding, filetexts, filenames,
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128)
ERROR:ContextBrowserUpdater: Something wrong in context browser monitor, process stopped 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128) exceptions.UnicodeDecodeError
Traceback (most recent call last):
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 85, in run
try: self._run()
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 113, in _run
self.has_injected = self.performInjection() # do once when we start
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 288, in performInjection
jscode = self.jscode%( boxpadding, filetexts, filenames,
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128)
ERROR:ContextBrowserUpdater: Something wrong in context browser monitor, process stopped 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128) exceptions.UnicodeDecodeError
Traceback (most recent call last):
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 85, in run
try: self._run()
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 113, in _run
self.has_injected = self.performInjection() # do once when we start
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 288, in performInjection
jscode = self.jscode%( boxpadding, filetexts, filenames,
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128)
ERROR:ContextBrowserUpdater: Something wrong in context browser monitor, process stopped 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128) exceptions.UnicodeDecodeError
Traceback (most recent call last):
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 85, in run
try: self._run()
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 113, in _run
self.has_injected = self.performInjection() # do once when we start
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 288, in performInjection
jscode = self.jscode%( boxpadding, filetexts, filenames,
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128)
ERROR:ContextBrowserUpdater: Something wrong in context browser monitor, process stopped 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128) exceptions.UnicodeDecodeError
Traceback (most recent call last):
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 85, in run
try: self._run()
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 113, in _run
self.has_injected = self.performInjection() # do once when we start
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 288, in performInjection
jscode = self.jscode%( boxpadding, filetexts, filenames,
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128)
ERROR:ContextBrowserUpdater: Something wrong in context browser monitor, process stopped 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128) exceptions.UnicodeDecodeError
Traceback (most recent call last):
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 85, in run
try: self._run()
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 113, in _run
self.has_injected = self.performInjection() # do once when we start
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 288, in performInjection
jscode = self.jscode%( boxpadding, filetexts, filenames,
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128)
ERROR:ContextBrowserUpdater: Something wrong in context browser monitor, process stopped 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128) exceptions.UnicodeDecodeError
Traceback (most recent call last):
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 85, in run
try: self._run()
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 113, in _run
self.has_injected = self.performInjection() # do once when we start
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 288, in performInjection
jscode = self.jscode%( boxpadding, filetexts, filenames,
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128)
ERROR:ContextBrowserUpdater: Something wrong in context browser monitor, process stopped 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128) exceptions.UnicodeDecodeError
Traceback (most recent call last):
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 85, in run
try: self._run()
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 113, in _run
self.has_injected = self.performInjection() # do once when we start
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 288, in performInjection
jscode = self.jscode%( boxpadding, filetexts, filenames,
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128)
ERROR:ContextBrowserUpdater: Something wrong in context browser monitor, process stopped 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128) exceptions.UnicodeDecodeError
Traceback (most recent call last):
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 85, in run
try: self._run()
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 113, in _run
self.has_injected = self.performInjection() # do once when we start
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 288, in performInjection
jscode = self.jscode%( boxpadding, filetexts, filenames,
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128)
ERROR:ContextBrowserUpdater: Something wrong in context browser monitor, process stopped 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128) exceptions.UnicodeDecodeError
Traceback (most recent call last):
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 85, in run
try: self._run()
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 113, in _run
self.has_injected = self.performInjection() # do once when we start
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 288, in performInjection
jscode = self.jscode%( boxpadding, filetexts, filenames,
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128)
ERROR:ContextBrowserUpdater: Something wrong in context browser monitor, process stopped 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128) exceptions.UnicodeDecodeError
Traceback (most recent call last):
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 85, in run
try: self._run()
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 113, in _run
self.has_injected = self.performInjection() # do once when we start
File "/home/fish/.kde/share/apps/amarok/scripts/conTEXT/ContextBrowserUpdater.py", line 288, in performInjection
jscode = self.jscode%( boxpadding, filetexts, filenames,
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 7: ordinal not in range(128)
No idea what's going on here but suddenly your script does not work anymore... :(
Report
saladasalad
14 years ago
Report
camico
14 years ago
Report
profoX
14 years ago
Report
reggler
14 years ago
Thank you for the fix, it now seems to work fine without crashing but where is the info supposed to be disdplayed? I cannot see anything and i set the sources to 'Auto'. What am i missing? Thank you!
Report
camico
14 years ago
Do you see the search animation icon (I guess this should be improved). Move your mouse over it, hold still, and see if you get any status info. Maybe it just can't find anything for your album. Correct tags are important, of course.
However if it says "Found!" somewhere and, once all marked sites have been searched, you still don't see a review...set DEBUG = True in common.py, then try again and send my the log...
Report