Skip to content

Instantly share code, notes, and snippets.

@JonnyWong16
Last active December 17, 2018 00:25
Show Gist options
  • Save JonnyWong16/12c596707c80be5b134c5878cccd62a7 to your computer and use it in GitHub Desktop.
Save JonnyWong16/12c596707c80be5b134c5878cccd62a7 to your computer and use it in GitHub Desktop.
Simulates shuffling of a Plex playlist to a CSV file
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
745
771
772
773
774
34658
775
34650
776
34651
777
34659
34652
778
34660
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
34633
34641
34715
34716
34738
34741
34780
35465
34795
35467
44335
44345
44364
44366
44370
46041
46061
46365
46467
46477
46487
46489
46497
46505
46501
46512
47285
47309
47310
47314
47658
47660
47695
47826
47831
47836
47872
47878
47883
47892
47914
48038
50842
50844
50887
50892
50900
50904
50931
50934
50948
50951
51385
51471
54968
54973
55853
55851
56416
175474
175475
175478
183614
175477
175476
76829
76944
77691
77935
78845
79016
63603
80068
80274
81286
81436
81483
82288
82352
82610
84533
83732
83875
84850
85822
85972
86021
86807
86861
86976
87777
94121
102312
102422
102429
223670
106182
106438
106541
223671
110159
110374
110651
223672
114237
114344
114522
223673
118290
118402
223674
119138
119361
122082
223675
122716
223676
223677
132007
135454
135678
135791
139540
139653
139917
223678
143821
223679
144724
223680
148541
148853
223681
153598
154036
223682
162780
163185
223683
167401
167441
223684
171433
171560
223685
175213
175471
202430
202442
202523
202563
202585
223657
229600
203440
203896
204107
223658
229601
206527
206678
207182
223659
229602
209049
209271
209451
223660
229603
210121
210455
223661
229604
211916
212268
212640
223662
229605
214508
214770
216025
216254
216458
223663
217256
217264
223664
218851
223665
218881
219358
221321
223666
221560
221783
222246
223667
222277
222280
223569
223577
223641
223668
223646
223714
224031
224035
224065
224151
224155
224154
224459
224458
224461
224523
224528
224527
224529
224585
224605
224592
224616
224723
224951
224959
224978
225050
225053
225083
225129
225149
225151
225352
225356
225450
225927
226765
226767
232272
232304
232302
232332
232441
232445
232444
232454
232566
232569
232570
232611
232652
232661
232660
232694
232720
232730
232729
232741
232807
232815
232811
232954
233030
233053
233052
233065
233141
233140
233147
233146
233233
233250
233249
233266
234098
234125
234142
234157
234248
234299
234370
234403
234417
234430
234434
234504
234517
234550
234583
234592
234605
234614
234618
234643
234656
234657
234671
234735
234754
234785
234855
234868
234874
234912
235457
235458
235467
235518
235529
235567
235654
235657
235716
235727
235746
235759
236485
236504
236535
236667
236674
236721
248572
248606
248645
50892 223677 233140 234125 86861 34652 47695 225151 229603 86976 83732 175478 212268 46467 50887 77691 771 209271 206527 77935 233266
224528 46041 76829 784 122082 171433 175213 102422 207182 234098 233249 216025 219358 47658 214508 235746 223674 233053 225927 232815 46497
223661 106438 63603 175213 46061 135454 223657 233140 206678 234583 144724 122082 224035 139540 221783 223671 236485 234550 765 777 209049
44345 171433 218881 236721 234550 55853 233249 234370 87777 50948 748 234157 211916 224528 780 223676 236667 114237 232661 139540 234517
34650 764 226765 234417 211916 46489 210455 216025 224585 225083 235457 789 235518 223682 218881 775 235716 110651 34795 114522 224458
234671 80274 34641 777 135791 225053 144724 76829 223660 234504 232730 234855 792 183614 34795 232566 47310 209049 216458 54968 79016
224155 232444 248572 234583 234735 110159 224035 248645 110651 779 235654 223670 777 202430 225050 223668 221321 148853 236535 34652 47883
234656 47878 77935 118290 210455 224154 224031 79016 234874 235759 224592 34659 47836 222280 225352 234504 232566 223679 135454 110651 139540
217264 771 759 47314 233250 233140 234299 175477 212268 50900 87777 34658 224951 139540 110374 135791 225927 86807 46365 224528 232332
781 232729 223667 234403 757 755 234754 225149 222246 235467 210121 759 234618 50904 754 175474 84850 216254 772 47285 167441
212640 759 745 234735 784 114344 235716 233052 223679 122716 232272 224154 46505 248572 234417 769 233250 175471 216458 225129 222280
206527 34651 751 80068 223675 223661 34660 757 223681 234403 206678 209271 47314 44345 234874 232332 235727 234299 790 234592 221783
47695 110159 119361 233146 217256 225352 106182 232815 234656 183614 162780 223657 50844 55851 234125 207182 232729 34633 750 216025 222246
55853 232741 51385 82288 81436 751 223667 223671 47658 233147 223670 232661 224461 139653 225356 50931 34715 223683 110651 778 232272
50887 35467 768 34780 47695 223683 223680 135678 235759 34651 226765 760 232445 224155 224035 202563 47660 46061 175478 85972 44366
35467 223679 233141 226765 80068 234643 86861 85972 784 229605 110374 232302 119138 34652 46505 782 209271 234550 756 233233 148541
234605 85972 234430 87777 175476 154036 778 229604 76944 34660 50904 234098 224154 34715 224529 787 183614 222246 47310 171433 223682
222280 785 35467 745 50934 50931 47892 235716 47878 769 233249 234417 234157 768 232566 226765 94121 82288 232570 34658 234583
206527 232444 232304 47826 771 762 122082 223674 777 34738 792 236485 233266 232730 83732 217264 226765 223682 223684 766 34716
232694 235759 110374 235716 236485 81286 236504 777 202563 232569 82610 234754 760 209271 51471 44364 224151 758 118290 210121 223683
234370 223684 80274 760 50951 163185 758 759 225053 171560 50934 212640 235467 223641 55851 34660 229603 171433 780 233266 232444
223680 223679 776 102422 771 234125 747 223658 223681 236721 234785 44366 153598 223663 217256 206527 234605 224154 234754 224529 86021
162780 209271 175474 56416 779 225352 232611 234605 757 223665 223646 223678 224527 224458 234403 233053 223670 224523 50948 122716 34651
139917 175471 761 34658 76944 236721 46041 47309 106182 224035 233249 224585 34738 106541 44366 235529 46365 225927 221560 232304 234417
223667 171560 224723 118290 46477 777 223658 234754 78845 204107 765 225352 234656 44364 232566 224459 761 224616 233250 34651 751
224592 76829 235657 234912 46477 233052 224459 218881 175213 223577 764 234657 214508 81436 235467 202523 114237 47826 224065 102429 224723
175471 110651 774 224959 234370 783 223671 86021 202430 47660 778 776 50844 232954 232815 755 34659 135678 232611 234430 235457
47878 207182 232811 216254 225050 233266 223680 122082 232661 224527 232652 789 202430 223682 135678 773 202563 236485 783 234657 217256
748 34780 217256 223672 144724 754 232441 51385 234754 202430 234248 47695 224155 790 753 234583 232652 216458 139540 234656 226767
224605 48038 234874 175476 226765 110374 106438 216458 167441 46501 46505 784 234605 202585 132007 163185 234403 234754 63603 232652 234868
46365 167401 233250 783 223681 76829 223714 229600 44366 175475 753 233233 50931 223677 234605 224529 248645 86807 63603 47310 122082
207182 764 224978 86021 225352 223680 233140 82288 102422 119138 216254 223674 218851 175478 224528 760 219358 767 232332 114237 233052
202442 224592 46487 46501 86021 34650 34633 234605 175475 771 135454 232570 232304 221560 202563 223684 48038 216025 46512 76829 754
232444 34795 234874 226765 225053 46489 232954 224978 206678 235457 232454 232729 225151 34633 758 44364 223671 47314 144724 223675 46041
209451 765 222246 232694 235716 34660 234671 206527 102422 224723 119361 787 217256 80068 85822 223679 47883 235457 233053 114522 47914
223677 47285 223569 77935 234098 86021 223667 44364 175475 211916 216254 248645 204107 214508 793 143821 234403 232444 757 234618 47878
235727 55851 135454 232954 153598 139540 214770 792 50934 234643 51471 768 751 102429 225083 47831 47309 34715 86807 779 46512
232694 235654 224592 46512 224151 86021 236485 204107 236674 79016 751 749 753 229600 85822 773 46501 234592 232454 223675 226765
171560 232454 767 212268 211916 50948 235746 214770 46061 772 235759 47660 785 223577 758 77691 207182 750 46497 223670 212640
175478 792 44366 122082 47878 234248 225356 234434 229602 46477 233053 50934 776 44345 106182 223683 139653 236535 778 135454 785
233146 78845 223684 50844 114237 225129 135791 226765 50892 225151 183614 204107 47285 235727 236504 235567 223677 222280 47836 759 224616
34650 767 232815 76944 775 47826 233233 84533 50844 234430 779 232332 224951 223683 232954 80068 232272 223684 118290 223682 223658
50887 114522 234403 754 207182 233053 163185 110651 83732 202442 234671 77935 148541 233141 223676 234370 768 751 214508 235746 234754
232441 34658 206678 204107 223685 236504 234605 235759 223657 788 80068 148853 86861 223661 234299 223674 233141 224585 223663 232570 761
34651 234735 204107 223668 223641 791 171560 47658 756 229603 34658 232454 86976 102429 233065 769 46041 34660 223663 76944 758
114344 224031 235759 223675 791 47883 206678 76829 224592 232741 233052 224458 224951 229600 232954 235458 223673 783 34795 223667 225151
84533 223657 777 34633 224592 759 34659 47914 47892 771 106438 757 223661 234912 234403 221321 778 223662 47883 772 224723
224155 232569 757 46041 139540 50934 760 46489 175476 234868 224461 175477 229602 223682 752 234656 83875 224528 232332 223663 233266
235458 223684 248606 235518 235746 234855 34658 34641 236485 106541 224616 224951 777 233250 210121 212640 139540 223674 234550 223662 223641
232454 236721 143821 223661 223664 224031 218851 153598 80274 47695 47314 202563 223663 232815 225927 233249 224951 175213 221783 34780 224527
236535 144724 235567 44366 106182 233052 234504 224978 234912 224031 235657 114522 154036 223577 119361 46061 232441 47285 47658 175475 210121
229601 234785 232441 223670 235458 779 153598 34658 51385 232720 234855 202442 763 223685 234417 774 223667 233030 204107 235567 235518
47658 232302 232569 223661 207182 214508 223675 78845 35467 747 47285 225129 83875 225083 35465 34658 225053 234430 224151 789 54968
232729 175213 167441 47695 232441 135454 757 46061 102312 94121 110159 209271 225450 759 86861 47285 218851 214508 224065 235716 118402
760 232454 76829 118402 85972 223658 216254 223668 747 114237 223672 87777 234417 175213 46497 229601 85822 34780 34660 77935 225151
232729 135678 209049 224527 207182 50904 34741 76829 221560 35465 223683 47914 223677 47660 234735 211916 50948 232741 55851 54973 175477
234912 34633 779 234735 235457 234754 171560 233147 749 775 233141 235529 87777 86976 225083 34658 223658 106438 50842 55853 760
47872 34651 211916 234618 223676 144724 223684 50844 232570 225050 50951 236667 135678 206678 50842 234656 86807 768 761 756 214770
224154 84850 754 234157 235759 44366 86021 216458 175475 787 171560 234142 751 81483 114344 223684 229600 144724 83875 223676 47660
167441 229604 234430 203896 47314 85822 223663 236504 84533 221560 46061 114237 233141 223658 233053 224065 235518 63603 162780 110374 236721
102422 771 86861 234430 47836 223684 232332 223675 232566 232445 82288 224605 224154 234592 224031 232611 776 223685 206527 234417 119361
768 232441 135454 114344 94121 224065 234656 47658 209271 46365 223682 793 224151 745 34633 214770 224959 47310 224951 34658 753
35467 767 788 214770 234417 780 80068 223673 223661 234248 225927 225053 229601 772 34651 758 50844 234098 224585 223663 223685
44366 229602 35465 223680 223672 229605 171433 102312 223678 47872 233249 34738 204107 114237 766 77935 34650 34660 234550 232807 225151
84533 232454 224154 55851 102312 234142 235529 233147 50842 82610 222280 224035 47831 118290 144724 750 232730 50900 225050 102429 202523
776 785 212268 222277 229605 47883 232302 226767 44364 229601 154036 118402 223641 114522 34659 774 222280 790 87777 114344 144724
234157 223577 221321 232661 78845 86807 221560 175476 222280 167441 224031 232811 218851 234643 780 34795 234403 760 86861 122716 224723
223657 761 118290 748 94121 163185 762 209271 224528 222280 175474 46489 50931 229603 132007 221783 35465 84533 80274 47695 110159
80274 139540 54973 110159 56416 222280 745 224529 44370 223680 232570 755 46365 789 223662 50951 102312 209049 234754 234430 234656
232445 781 223674 204107 234618 50951 171433 83732 775 234754 784 232730 225927 778 47914 248606 56416 224528 175478 175471 34652
203440 219358 747 226765 80274 139653 766 216025 233249 792 119138 759 63603 224527 223661 235567 34741 46505 234671 761 234614
223664 232272 46365 218851 777 47878 50904 175474 234157 747 233141 234614 223667 235467 175475 793 114344 122082 217264 81483 226765
234157 233250 46489 203896 50842 46467 229602 154036 221783 235654 47836 167441 47658 35467 232611 47872 44335 234504 235759 223679 224035
233052 34780 224458 175476 234248 750 175475 139540 222280 214508 225149 223657 234517 224031 236485 223641 46501 202585 223685 47878 223673
234657 234656 224035 226765 234592 86861 84533 223683 223577 226767 783 80068 224529 35467 223668 234504 233140 224065 139653 209451 224154
143821 47314 223664 223714 47695 236504 224528 229600 217264 76944 224978 34650 775 86807 762 202563 35465 175478 46489 234785 223677
765 44335 51471 775 221783 789 212268 84850 785 223678 175477 223685 209451 85972 110159 202430 234735 47285 94121 226765 236485
219358 47878 777 233233 773 223646 224035 50931 232570 50842 223675 233146 46365 218851 47892 209049 175213 50892 46512 232660 234583
34658 144724 202442 56416 106541 86976 204107 47309 77691 82352 223675 791 34716 81286 773 47914 51471 222280 118402 786 47892
47660 233250 76944 233053 767 234248 222277 34650 44364 50951 234785 234592 83875 223666 750 135678 202585 248606 232454 223569 234430
225083 223663 80068 748 232729 224151 223662 44364 234517 50931 226767 118290 223671 47883 232811 793 204107 223678 135454 232807 745
148541 234754 175471 81483 223680 47872 223678 102429 122082 46365 223668 175474 143821 48038 223658 51471 780 34641 50948 211916 235567
232815 223668 234912 788 793 233052 223680 234299 46487 790 34650 234417 236667 204107 766 225129 235458 46505 167441 82288 50931
762 223675 232807 212640 47892 76829 210121 234656 232660 753 106541 224951 223714 761 34715 34633 47836 248645 223658 63603 223678
80274 749 110374 210455 235457 102422 202523 762 752 224065 777 87777 47314 236504 221560 50887 235657 34715 225450 747 234735
47878 234430 202430 224723 232694 55851 34660 221321 754 47660 114522 223680 223683 34633 234517 234735 46497 47883 135454 85822 223665
223667 175474 766 232661 234517 82352 223679 772 235458 175477 44366 102429 214770 784 175475 232729 34658 786 223646 86021 50951
234370 118402 232720 47836 47660 148853 223675 780 232566 79016 47826 50934 753 751 119138 51385 234583 34659 175213 44345 218851
47309 761 745 135791 778 223668 234592 223577 35467 47878 209271 46512 34715 232807 202442 232661 223667 223646 235457 223662 44335
224585 236535 139917 224035 791 77691 50934 224155 86021 781 232302 114344 114237 223665 223678 211916 87777 750 46497 167401 793
47872 202442 46497 34641 229603 135454 139653 233147 775 82610 202563 221321 236674 248572 203440 77691 223665 786 223646 86976 232444
81436 223641 51385 248572 223673 35467 234550 236721 234874 223657 219358 202563 224959 223666 788 232815 135678 82610 793 122716 210455
223667 148853 217264 212268 46041 223663 135791 223672 232660 175474 86976 752 233030 46467 34738 47892 46501 235716 234299 114522 223670
44364 232304 234785 234605 175477 248606 223676 223671 233146 758 778 175471 234299 756 106541 234517 77691 793 135791 47660 233140
248645 46512 783 781 46489 223646 793 232445 209451 236504 223659 78845 232441 118290 139917 76829 235727 214508 50842 35467 46467
225149 223714 202430 232566 750 84533 234098 229600 782 234614 787 34641 232954 224458 86807 771 110651 55853 233141 233053 234605
775 773 224978 34660 110374 234517 234142 223674 234370 223577 76944 34658 769 34659 212268 232332 47872 86861 34715 752 224605
224605 232454 122082 171560 232720 232694 233065 223658 204107 234430 224529 235457 106182 34633 234868 54973 225151 46501 46041 110374 232807
223676 223673 219358 223714 63603 50892 225083 47658 132007 236535 233053 786 224523 118402 762 206527 232454 224592 234874 234157 34651
226767 51471 34658 225450 81286 234248 44370 234550 224528 232302 47878 50904 234417 34641 47309 163185 216025 50892 154036 81436 94121
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#
# Description: Simulates shuffling of a Plex playlist to a CSV file
# Author: /u/SwiftPanda16
# Requires: plexapi
from plexapi.server import PlexServer
from plexapi.playqueue import PlayQueue
### EDIT SETTINGS ###
PLEX_URL = 'http://localhost:32400'
PLEX_TOKEN = 'xxxxxxxxxxxxxxxxxxxx'
LIBRARY_NAME = 'TV Shows'
SHOW_NAME = 'Arrow'
PLAYLIST_TITLE = '' # Playlist to shuffle (will override the SHOW_NAME)
NUMBER_OF_SHUFFLES = 100
RATING_KEYS_FILE = 'rating_keys.txt' # TXT file with a list of ratingKeys
SHUFFLE_FILE = 'shuffles.csv' # CSV file with a list of shuffled items
## CODE BELOW ##
plex = PlexServer(PLEX_URL, PLEX_TOKEN)
if PLAYLIST_TITLE:
item_list = plex.playlist(PLAYLIST_TITLE)
else:
item_list = plex.library.section(LIBRARY_NAME).get(SHOW_NAME)
with open(RATING_KEYS_FILE, 'w') as f:
f.write('\n'.join([str(item.ratingKey) for item in item_list.items()]))
with open(SHUFFLE_FILE, 'w') as f:
for i in xrange(NUMBER_OF_SHUFFLES):
queue = PlayQueue.create(plex, item_list, shuffle=1)
f.write(','.join([str(item.ratingKey) for item in queue.items]) + '\n')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment