youtube-crawler 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 32f42de1bd9d46033fd679c066b40f293157ec21
4
+ data.tar.gz: ec6737af9d9be60a3c7136a40d5bddca97473dd7
5
+ SHA512:
6
+ metadata.gz: d767a1598cd7029941e1f5842703797e0589bd12b4069f3c0e831626698073285c0558b3ec82d400f2a7381837ae54c3ab9d3a791c8032fa11f8c4884c0b0f41
7
+ data.tar.gz: 02c75b88a3150029c04d8447815a2bd99dfe19f007d9d7de224f99d437c29a8d3380f2f50a6cd3869031731381e9e78d1a9366ca28d88f5422ab0204e5f4ec90
@@ -0,0 +1,34 @@
1
+ *.gem
2
+ *.rbc
3
+ /.config
4
+ /coverage/
5
+ /InstalledFiles
6
+ /pkg/
7
+ /spec/reports/
8
+ /test/tmp/
9
+ /test/version_tmp/
10
+ /tmp/
11
+
12
+ ## Specific to RubyMotion:
13
+ .dat*
14
+ .repl_history
15
+ build/
16
+
17
+ ## Documentation cache and generated files:
18
+ /.yardoc/
19
+ /_yardoc/
20
+ /doc/
21
+ /rdoc/
22
+
23
+ ## Environment normalisation:
24
+ /.bundle/
25
+ /lib/bundler/man/
26
+
27
+ # for a library or gem, you might want to ignore these files since the code is
28
+ # intended to run in multiple environments; otherwise, check them in:
29
+ # Gemfile.lock
30
+ # .ruby-version
31
+ # .ruby-gemset
32
+
33
+ # unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
34
+ .rvmrc
@@ -0,0 +1,5 @@
1
+ <component name="DependencyValidationManager">
2
+ <state>
3
+ <option name="SKIP_IMPORT_STATEMENTS" value="false" />
4
+ </state>
5
+ </component>
@@ -0,0 +1,427 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project version="4">
3
+ <component name="ChangeListManager">
4
+ <list default="true" id="d91ed3df-b8b4-4b74-9b74-9ce10c63d7c6" name="Default" comment="">
5
+ <change type="DELETED" beforePath="$PROJECT_DIR$/youtube-crawler.changes" afterPath="" />
6
+ <change type="DELETED" beforePath="$PROJECT_DIR$/youtube-crawler.spec" afterPath="" />
7
+ <change type="DELETED" beforePath="$PROJECT_DIR$/youtube-crawler.spec.template" afterPath="" />
8
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
9
+ <change type="MODIFICATION" beforePath="$PROJECT_DIR$/youtube-crawler.gemspec" afterPath="$PROJECT_DIR$/youtube-crawler.gemspec" />
10
+ </list>
11
+ <ignored path="youtube-crawler.iws" />
12
+ <ignored path=".idea/workspace.xml" />
13
+ <option name="TRACKING_ENABLED" value="true" />
14
+ <option name="SHOW_DIALOG" value="false" />
15
+ <option name="HIGHLIGHT_CONFLICTS" value="true" />
16
+ <option name="HIGHLIGHT_NON_ACTIVE_CHANGELIST" value="false" />
17
+ <option name="LAST_RESOLUTION" value="IGNORE" />
18
+ </component>
19
+ <component name="ChangesViewManager" flattened_view="true" show_ignored="false" />
20
+ <component name="CreatePatchCommitExecutor">
21
+ <option name="PATCH_PATH" value="" />
22
+ </component>
23
+ <component name="DaemonCodeAnalyzer">
24
+ <disable_hints />
25
+ </component>
26
+ <component name="ExecutionTargetManager" SELECTED_TARGET="default_target" />
27
+ <component name="FavoritesManager">
28
+ <favorites_list name="youtube-crawler" />
29
+ </component>
30
+ <component name="FileEditorManager">
31
+ <leaf>
32
+ <file leaf-file-name="crawler.rb" pinned="false" current="false" current-in-tab="false">
33
+ <entry file="file://$PROJECT_DIR$/lib/youtube/crawler.rb">
34
+ <provider selected="true" editor-type-id="text-editor">
35
+ <state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="1116">
36
+ <caret line="8" column="14" selection-start-line="8" selection-start-column="8" selection-end-line="8" selection-end-column="14" />
37
+ <folding />
38
+ </state>
39
+ </provider>
40
+ </entry>
41
+ </file>
42
+ <file leaf-file-name="youtube-crawler.gemspec" pinned="false" current="true" current-in-tab="true">
43
+ <entry file="file://$PROJECT_DIR$/youtube-crawler.gemspec">
44
+ <provider selected="true" editor-type-id="text-editor">
45
+ <state vertical-scroll-proportion="0.340694" vertical-offset="0" max-vertical-offset="634">
46
+ <caret line="12" column="31" selection-start-line="12" selection-start-column="31" selection-end-line="12" selection-end-column="31" />
47
+ <folding />
48
+ </state>
49
+ </provider>
50
+ </entry>
51
+ </file>
52
+ </leaf>
53
+ </component>
54
+ <component name="FindManager">
55
+ <FindUsagesManager>
56
+ <setting name="OPEN_NEW_TAB" value="true" />
57
+ </FindUsagesManager>
58
+ </component>
59
+ <component name="Git.Settings">
60
+ <option name="RECENT_GIT_ROOT_PATH" value="$PROJECT_DIR$" />
61
+ </component>
62
+ <component name="IdeDocumentHistory">
63
+ <option name="changedFiles">
64
+ <list>
65
+ <option value="$PROJECT_DIR$/lib/youtube/crawler.rb" />
66
+ <option value="$PROJECT_DIR$/config/key.yml" />
67
+ <option value="$PROJECT_DIR$/youtube-crawler.gemspec" />
68
+ </list>
69
+ </option>
70
+ </component>
71
+ <component name="ProjectFrameBounds">
72
+ <option name="x" value="1282" />
73
+ <option name="y" value="21" />
74
+ <option name="width" value="2489" />
75
+ <option name="height" value="1527" />
76
+ </component>
77
+ <component name="ProjectLevelVcsManager" settingsEditedManually="false">
78
+ <OptionsSetting value="true" id="Add" />
79
+ <OptionsSetting value="true" id="Remove" />
80
+ <OptionsSetting value="true" id="Checkout" />
81
+ <OptionsSetting value="true" id="Update" />
82
+ <OptionsSetting value="true" id="Status" />
83
+ <OptionsSetting value="true" id="Edit" />
84
+ <ConfirmationsSetting value="0" id="Add" />
85
+ <ConfirmationsSetting value="0" id="Remove" />
86
+ </component>
87
+ <component name="ProjectReloadState">
88
+ <option name="STATE" value="0" />
89
+ </component>
90
+ <component name="ProjectView">
91
+ <navigator currentView="ProjectPane" proportions="" version="1">
92
+ <flattenPackages />
93
+ <showMembers />
94
+ <showModules />
95
+ <showLibraryContents />
96
+ <hideEmptyPackages />
97
+ <abbreviatePackageNames />
98
+ <autoscrollToSource />
99
+ <autoscrollFromSource />
100
+ <sortByType />
101
+ </navigator>
102
+ <panes>
103
+ <pane id="Scope" />
104
+ <pane id="ProjectPane">
105
+ <subPane>
106
+ <PATH>
107
+ <PATH_ELEMENT>
108
+ <option name="myItemId" value="youtube-crawler" />
109
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
110
+ </PATH_ELEMENT>
111
+ </PATH>
112
+ <PATH>
113
+ <PATH_ELEMENT>
114
+ <option name="myItemId" value="youtube-crawler" />
115
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
116
+ </PATH_ELEMENT>
117
+ <PATH_ELEMENT>
118
+ <option name="myItemId" value="youtube-crawler" />
119
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
120
+ </PATH_ELEMENT>
121
+ </PATH>
122
+ <PATH>
123
+ <PATH_ELEMENT>
124
+ <option name="myItemId" value="youtube-crawler" />
125
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
126
+ </PATH_ELEMENT>
127
+ <PATH_ELEMENT>
128
+ <option name="myItemId" value="youtube-crawler" />
129
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
130
+ </PATH_ELEMENT>
131
+ <PATH_ELEMENT>
132
+ <option name="myItemId" value="lib" />
133
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
134
+ </PATH_ELEMENT>
135
+ <PATH_ELEMENT>
136
+ <option name="myItemId" value="youtube" />
137
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
138
+ </PATH_ELEMENT>
139
+ </PATH>
140
+ <PATH>
141
+ <PATH_ELEMENT>
142
+ <option name="myItemId" value="youtube-crawler" />
143
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
144
+ </PATH_ELEMENT>
145
+ <PATH_ELEMENT>
146
+ <option name="myItemId" value="youtube-crawler" />
147
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
148
+ </PATH_ELEMENT>
149
+ <PATH_ELEMENT>
150
+ <option name="myItemId" value="config" />
151
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
152
+ </PATH_ELEMENT>
153
+ </PATH>
154
+ <PATH>
155
+ <PATH_ELEMENT>
156
+ <option name="myItemId" value="youtube-crawler" />
157
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.ProjectViewProjectNode" />
158
+ </PATH_ELEMENT>
159
+ <PATH_ELEMENT>
160
+ <option name="myItemId" value="youtube-crawler" />
161
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
162
+ </PATH_ELEMENT>
163
+ <PATH_ELEMENT>
164
+ <option name="myItemId" value="bin" />
165
+ <option name="myItemType" value="com.intellij.ide.projectView.impl.nodes.PsiDirectoryNode" />
166
+ </PATH_ELEMENT>
167
+ </PATH>
168
+ </subPane>
169
+ </pane>
170
+ </panes>
171
+ </component>
172
+ <component name="PropertiesComponent">
173
+ <property name="options.lastSelected" value="org.jetbrains.plugins.ruby.settings.RubyActiveModuleSdkConfigurable" />
174
+ <property name="options.splitter.main.proportions" value="0.3" />
175
+ <property name="options.splitter.details.proportions" value="0.2" />
176
+ <property name="options.searchVisible" value="true" />
177
+ <property name="last_opened_file_path" value="$PROJECT_DIR$" />
178
+ <property name="WebServerToolWindowFactoryState" value="false" />
179
+ </component>
180
+ <component name="RunManager">
181
+ <configuration default="true" type="RSpecRunConfigurationType" factoryName="RSpec">
182
+ <predefined_log_file id="RUBY_RSPEC" enabled="true" />
183
+ <module name="" />
184
+ <RSPEC_RUN_CONFIG_SETTINGS_ID NAME="RUBY_ARGS" VALUE="-e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift)" />
185
+ <RSPEC_RUN_CONFIG_SETTINGS_ID NAME="WORK DIR" VALUE="" />
186
+ <RSPEC_RUN_CONFIG_SETTINGS_ID NAME="SHOULD_USE_SDK" VALUE="false" />
187
+ <RSPEC_RUN_CONFIG_SETTINGS_ID NAME="ALTERN_SDK_NAME" VALUE="" />
188
+ <RSPEC_RUN_CONFIG_SETTINGS_ID NAME="myPassParentEnvs" VALUE="true" />
189
+ <envs />
190
+ <EXTENSION ID="BundlerRunConfigurationExtension" bundleExecEnabled="false" />
191
+ <EXTENSION ID="JRubyRunConfigurationExtension" NailgunExecEnabled="false" />
192
+ <EXTENSION ID="RubyCoverageRunConfigurationExtension" enabled="false" sample_coverage="true" track_test_folders="true" runner="rcov">
193
+ <COVERAGE_PATTERN ENABLED="true">
194
+ <PATTERN REGEXPS="/.rvm/" INCLUDED="false" />
195
+ </COVERAGE_PATTERN>
196
+ </EXTENSION>
197
+ <EXTENSION ID="org.jetbrains.plugins.ruby.motion.run.MotionSimulatorRunExtension" />
198
+ <RSPEC_RUN_CONFIG_SETTINGS_ID NAME="TESTS_FOLDER_PATH" VALUE="" />
199
+ <RSPEC_RUN_CONFIG_SETTINGS_ID NAME="TEST_SCRIPT_PATH" VALUE="" />
200
+ <RSPEC_RUN_CONFIG_SETTINGS_ID NAME="SPEC_RUNNER_PATH" VALUE="" />
201
+ <RSPEC_RUN_CONFIG_SETTINGS_ID NAME="TEST_FILE_MASK" VALUE="**/*_spec.rb" />
202
+ <RSPEC_RUN_CONFIG_SETTINGS_ID NAME="SPEC_EXAMPLE_NAME" VALUE="" />
203
+ <RSPEC_RUN_CONFIG_SETTINGS_ID NAME="TEST_TEST_TYPE" VALUE="TEST_SCRIPT" />
204
+ <RSPEC_RUN_CONFIG_SETTINGS_ID NAME="SPEC_ARGS" VALUE="" />
205
+ <RSPEC_RUN_CONFIG_SETTINGS_ID NAME="RUNNER_VERSION" VALUE="" />
206
+ <RSPEC_RUN_CONFIG_SETTINGS_ID NAME="USE_CUSTOM_SPEC_RUNNER" VALUE="false" />
207
+ <RSPEC_RUN_CONFIG_SETTINGS_ID NAME="DRB" VALUE="false" />
208
+ <RSPEC_RUN_CONFIG_SETTINGS_ID NAME="ZEUS" VALUE="false" />
209
+ <RSPEC_RUN_CONFIG_SETTINGS_ID NAME="SPRING" VALUE="false" />
210
+ <RSPEC_RUN_CONFIG_SETTINGS_ID NAME="FULL_BACKTRACE" VALUE="false" />
211
+ <method />
212
+ </configuration>
213
+ <configuration default="true" type="RubyRunConfigurationType" factoryName="Ruby">
214
+ <module name="" />
215
+ <RUBY_RUN_CONFIG NAME="RUBY_ARGS" VALUE="-e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift)" />
216
+ <RUBY_RUN_CONFIG NAME="WORK DIR" VALUE="" />
217
+ <RUBY_RUN_CONFIG NAME="SHOULD_USE_SDK" VALUE="false" />
218
+ <RUBY_RUN_CONFIG NAME="ALTERN_SDK_NAME" VALUE="" />
219
+ <RUBY_RUN_CONFIG NAME="myPassParentEnvs" VALUE="true" />
220
+ <envs />
221
+ <EXTENSION ID="BundlerRunConfigurationExtension" bundleExecEnabled="false" />
222
+ <EXTENSION ID="JRubyRunConfigurationExtension" NailgunExecEnabled="false" />
223
+ <EXTENSION ID="RubyCoverageRunConfigurationExtension" enabled="false" sample_coverage="true" track_test_folders="true" runner="rcov">
224
+ <COVERAGE_PATTERN ENABLED="true">
225
+ <PATTERN REGEXPS="/.rvm/" INCLUDED="false" />
226
+ </COVERAGE_PATTERN>
227
+ </EXTENSION>
228
+ <EXTENSION ID="org.jetbrains.plugins.ruby.motion.run.MotionSimulatorRunExtension" />
229
+ <RUBY_RUN_CONFIG NAME="SCRIPT_PATH" VALUE="" />
230
+ <RUBY_RUN_CONFIG NAME="SCRIPT_ARGS" VALUE="" />
231
+ <method />
232
+ </configuration>
233
+ <configuration default="true" type="JavascriptDebugType" factoryName="JavaScript Debug">
234
+ <method />
235
+ </configuration>
236
+ <configuration default="true" type="TestUnitRunConfigurationType" factoryName="Test::Unit/Shoulda/Minitest">
237
+ <predefined_log_file id="RUBY_TESTUNIT" enabled="true" />
238
+ <module name="" />
239
+ <RTEST_RUN_CONFIG_SETTINGS_ID NAME="RUBY_ARGS" VALUE="-e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift)" />
240
+ <RTEST_RUN_CONFIG_SETTINGS_ID NAME="WORK DIR" VALUE="" />
241
+ <RTEST_RUN_CONFIG_SETTINGS_ID NAME="SHOULD_USE_SDK" VALUE="false" />
242
+ <RTEST_RUN_CONFIG_SETTINGS_ID NAME="ALTERN_SDK_NAME" VALUE="" />
243
+ <RTEST_RUN_CONFIG_SETTINGS_ID NAME="myPassParentEnvs" VALUE="true" />
244
+ <envs />
245
+ <EXTENSION ID="BundlerRunConfigurationExtension" bundleExecEnabled="false" />
246
+ <EXTENSION ID="JRubyRunConfigurationExtension" NailgunExecEnabled="false" />
247
+ <EXTENSION ID="RubyCoverageRunConfigurationExtension" enabled="false" sample_coverage="true" track_test_folders="true" runner="rcov">
248
+ <COVERAGE_PATTERN ENABLED="true">
249
+ <PATTERN REGEXPS="/.rvm/" INCLUDED="false" />
250
+ </COVERAGE_PATTERN>
251
+ </EXTENSION>
252
+ <EXTENSION ID="org.jetbrains.plugins.ruby.motion.run.MotionSimulatorRunExtension" />
253
+ <RTEST_RUN_CONFIG_SETTINGS_ID NAME="TESTS_FOLDER_PATH" VALUE="" />
254
+ <RTEST_RUN_CONFIG_SETTINGS_ID NAME="TEST_SCRIPT_PATH" VALUE="" />
255
+ <RTEST_RUN_CONFIG_SETTINGS_ID NAME="TEST_FILE_MASK" VALUE="" />
256
+ <RTEST_RUN_CONFIG_SETTINGS_ID NAME="TEST_METHOD_NAME" VALUE="" />
257
+ <RTEST_RUN_CONFIG_SETTINGS_ID NAME="TEST_TEST_TYPE" VALUE="TEST_SCRIPT" />
258
+ <RTEST_RUN_CONFIG_SETTINGS_ID NAME="DRB" VALUE="false" />
259
+ <RTEST_RUN_CONFIG_SETTINGS_ID NAME="ZEUS" VALUE="false" />
260
+ <RTEST_RUN_CONFIG_SETTINGS_ID NAME="SPRING" VALUE="false" />
261
+ <RTEST_RUN_CONFIG_SETTINGS_ID NAME="RUNNER_OPTIONS" VALUE="" />
262
+ <method />
263
+ </configuration>
264
+ <configuration default="true" type="CucumberRunConfigurationType" factoryName="Cucumber">
265
+ <predefined_log_file id="RUBY_CUCUMBER" enabled="true" />
266
+ <module name="" />
267
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="RUBY_ARGS" VALUE="-e $stdout.sync=true;$stderr.sync=true;load($0=ARGV.shift)" />
268
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="WORK DIR" VALUE="" />
269
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="SHOULD_USE_SDK" VALUE="false" />
270
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="ALTERN_SDK_NAME" VALUE="" />
271
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="myPassParentEnvs" VALUE="true" />
272
+ <envs />
273
+ <EXTENSION ID="BundlerRunConfigurationExtension" bundleExecEnabled="false" />
274
+ <EXTENSION ID="JRubyRunConfigurationExtension" NailgunExecEnabled="false" />
275
+ <EXTENSION ID="RubyCoverageRunConfigurationExtension" enabled="false" sample_coverage="true" track_test_folders="true" runner="rcov">
276
+ <COVERAGE_PATTERN ENABLED="true">
277
+ <PATTERN REGEXPS="/.rvm/" INCLUDED="false" />
278
+ </COVERAGE_PATTERN>
279
+ </EXTENSION>
280
+ <EXTENSION ID="org.jetbrains.plugins.ruby.motion.run.MotionSimulatorRunExtension" />
281
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="TEST_FILE_MASK" VALUE="**/*.feature" />
282
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="TEST_TEST_TYPE" VALUE="TEST_SCRIPT" />
283
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="TESTS_FOLDER_PATH" VALUE="" />
284
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="TEST_SCRIPT_PATH" VALUE="" />
285
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="TEST_TAGS_FILTER" VALUE="" />
286
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="TEST_NAME_FILTER" VALUE="" />
287
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="CUCUMBER_ARGS" VALUE="--color -r features" />
288
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="RUNNER_VERSION" VALUE="" />
289
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="FULL_BACKTRACE" VALUE="false" />
290
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="VERBOSE_OPTION" VALUE="false" />
291
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="DRB" VALUE="false" />
292
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="ZEUS" VALUE="false" />
293
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="SPRING" VALUE="false" />
294
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="CUCUMBER_RUNNER_PATH" VALUE="" />
295
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="USE_CUSTOM_RUNNER" VALUE="false" />
296
+ <CUCUMBER_RUN_CONFIG_SETTINGS_ID NAME="SETTINGS_VERSION" VALUE="2" />
297
+ <method />
298
+ </configuration>
299
+ <list size="0" />
300
+ </component>
301
+ <component name="ShelveChangesManager" show_recycled="false" />
302
+ <component name="SvnConfiguration">
303
+ <configuration />
304
+ </component>
305
+ <component name="TaskManager">
306
+ <task active="true" id="Default" summary="Default task">
307
+ <changelist id="d91ed3df-b8b4-4b74-9b74-9ce10c63d7c6" name="Default" comment="" />
308
+ <created>1402676712682</created>
309
+ <updated>1402676712682</updated>
310
+ </task>
311
+ <servers />
312
+ </component>
313
+ <component name="ToolWindowManager">
314
+ <frame x="1282" y="21" width="2489" height="1527" extended-state="0" />
315
+ <editor active="true" />
316
+ <layout>
317
+ <window_info id="Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.32997763" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
318
+ <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.29380342" sideWeight="0.37797618" order="8" side_tool="false" content_ui="tabs" />
319
+ <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
320
+ <window_info id="Database" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
321
+ <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
322
+ <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" weight="0.17074664" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
323
+ <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
324
+ <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
325
+ <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.43535912" sideWeight="0.5" order="9" side_tool="true" content_ui="tabs" />
326
+ <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" x="0" y="398" width="1680" height="298" />
327
+ <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="10" side_tool="false" content_ui="tabs" />
328
+ <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
329
+ <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
330
+ <window_info id="Ant Build" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
331
+ <window_info id="Find" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.33" sideWeight="0.5" order="1" side_tool="false" content_ui="tabs" />
332
+ <window_info id="Messages" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.3296875" sideWeight="0.5" order="11" side_tool="false" content_ui="tabs" />
333
+ <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="SLIDING" type="SLIDING" visible="false" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
334
+ <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
335
+ <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
336
+ </layout>
337
+ </component>
338
+ <component name="Vcs.Log.UiProperties">
339
+ <option name="RECENTLY_FILTERED_USER_GROUPS">
340
+ <collection />
341
+ </option>
342
+ <option name="RECENTLY_FILTERED_BRANCH_GROUPS">
343
+ <collection />
344
+ </option>
345
+ </component>
346
+ <component name="VcsContentAnnotationSettings">
347
+ <option name="myLimit" value="2678400000" />
348
+ </component>
349
+ <component name="VcsManagerConfiguration">
350
+ <option name="myTodoPanelSettings">
351
+ <TodoPanelSettings />
352
+ </option>
353
+ </component>
354
+ <component name="XDebuggerManager">
355
+ <breakpoint-manager />
356
+ </component>
357
+ <component name="editorHistoryManager">
358
+ <entry file="file://$PROJECT_DIR$/lib/youtube/crawler.rb">
359
+ <provider selected="true" editor-type-id="text-editor">
360
+ <state vertical-scroll-proportion="0.0" vertical-offset="432" max-vertical-offset="720">
361
+ <caret line="24" column="0" selection-start-line="24" selection-start-column="0" selection-end-line="24" selection-end-column="0" />
362
+ <folding />
363
+ </state>
364
+ </provider>
365
+ </entry>
366
+ <entry file="file://$PROJECT_DIR$/lib/youtube/crawler.rb">
367
+ <provider selected="true" editor-type-id="text-editor">
368
+ <state vertical-scroll-proportion="0.0" vertical-offset="396" max-vertical-offset="702">
369
+ <caret line="22" column="20" selection-start-line="22" selection-start-column="20" selection-end-line="22" selection-end-column="20" />
370
+ <folding />
371
+ </state>
372
+ </provider>
373
+ </entry>
374
+ <entry file="file://$PROJECT_DIR$/lib/youtube/crawler/version.rb">
375
+ <provider selected="true" editor-type-id="text-editor">
376
+ <state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="715">
377
+ <caret line="0" column="7" selection-start-line="0" selection-start-column="7" selection-end-line="0" selection-end-column="7" />
378
+ <folding />
379
+ </state>
380
+ </provider>
381
+ </entry>
382
+ <entry file="file://$PROJECT_DIR$/LICENSE.txt">
383
+ <provider selected="true" editor-type-id="text-editor">
384
+ <state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="608">
385
+ <caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
386
+ <folding />
387
+ </state>
388
+ </provider>
389
+ <provider editor-type-id="com.intellij.persistence.database.editor.CsvTableFileEditorProvider">
390
+ <state />
391
+ </provider>
392
+ </entry>
393
+ <entry file="file://$PROJECT_DIR$/config/key.yml">
394
+ <provider selected="true" editor-type-id="text-editor">
395
+ <state vertical-scroll-proportion="0.028391168" vertical-offset="0" max-vertical-offset="634">
396
+ <caret line="1" column="9" selection-start-line="1" selection-start-column="9" selection-end-line="1" selection-end-column="9" />
397
+ <folding />
398
+ </state>
399
+ </provider>
400
+ </entry>
401
+ <entry file="file://$PROJECT_DIR$/Rakefile">
402
+ <provider selected="true" editor-type-id="text-editor">
403
+ <state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="144">
404
+ <caret line="0" column="0" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
405
+ <folding />
406
+ </state>
407
+ </provider>
408
+ </entry>
409
+ <entry file="file://$PROJECT_DIR$/lib/youtube/crawler.rb">
410
+ <provider selected="true" editor-type-id="text-editor">
411
+ <state vertical-scroll-proportion="0.0" vertical-offset="0" max-vertical-offset="1116">
412
+ <caret line="8" column="14" selection-start-line="8" selection-start-column="8" selection-end-line="8" selection-end-column="14" />
413
+ <folding />
414
+ </state>
415
+ </provider>
416
+ </entry>
417
+ <entry file="file://$PROJECT_DIR$/youtube-crawler.gemspec">
418
+ <provider selected="true" editor-type-id="text-editor">
419
+ <state vertical-scroll-proportion="0.340694" vertical-offset="0" max-vertical-offset="634">
420
+ <caret line="12" column="31" selection-start-line="12" selection-start-column="31" selection-end-line="12" selection-end-column="31" />
421
+ <folding />
422
+ </state>
423
+ </provider>
424
+ </entry>
425
+ </component>
426
+ </project>
427
+
data/Gemfile ADDED
@@ -0,0 +1,12 @@
1
+ source 'https://rubygems.org'
2
+
3
+
4
+ gem 'youtube_it'
5
+ gem 'rspec'
6
+ gem 'rubocop'
7
+ gem 'simplecov'
8
+ gem 'byebug'
9
+ gem 'debugger'
10
+
11
+ # Specify your gem's dependencies in youtube-crawler.gemspec
12
+ gemspec
@@ -0,0 +1,22 @@
1
+ Copyright (c) 2014 jschmid1
2
+
3
+ MIT License
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ "Software"), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
19
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
20
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
21
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
22
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -0,0 +1,30 @@
1
+ # Youtube::Crawler
2
+
3
+ sarch youtube videos on the commandline and watch them via vlc
4
+
5
+ ## Installation
6
+
7
+ Add this line to your application's Gemfile:
8
+
9
+ gem 'youtube-crawler'
10
+
11
+ And then execute:
12
+
13
+ $ bundle
14
+
15
+ Or install it yourself as:
16
+
17
+ $ gem install youtube-crawler
18
+
19
+ ## Usage
20
+
21
+ TODO: Write usage instructions here
22
+
23
+ ## Contributing
24
+
25
+ 1. Fork it ( https://github.com/[my-github-username]/youtube-crawler/fork )
26
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
27
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
28
+ 4. Push to the branch (`git push origin my-new-feature`)
29
+ 5. Create a new Pull Request
30
+ >>>>>>> init
@@ -0,0 +1,2 @@
1
+ require "bundler/gem_tasks"
2
+
@@ -0,0 +1,7 @@
1
+ #!/usr/bin/ruby
2
+ $LOAD_PATH.unshift File.join(File.dirname(__FILE__), '..', 'lib')
3
+ require 'youtube/cli'
4
+ require 'youtube/crawler'
5
+ # Launcher
6
+ client = YoutubeCrawler::Cli.new(ARGV.dup)
7
+ client.execute!
@@ -0,0 +1,2 @@
1
+ username:
2
+ password:
@@ -0,0 +1,68 @@
1
+ require 'optparse'
2
+ require 'youtube/cli'
3
+ require 'youtube/crawler'
4
+ require 'youtube/crawler/version'
5
+ module YoutubeCrawler
6
+
7
+ class Cli
8
+
9
+ attr_reader :options
10
+
11
+ def initialize(argv)
12
+ @options = {}
13
+ @argv = argv
14
+ extract_options
15
+ end
16
+
17
+
18
+ def execute!
19
+ if !@options[:search] && !@options[:max_results]
20
+ puts 'Try youtube-crawler -s <SEARCH_TERM>'
21
+ puts @opts
22
+ elsif !options[:search]
23
+ puts @opts
24
+ else
25
+ YoutubeCrawler::Search.new(@options).run
26
+ end
27
+ end
28
+
29
+ def extract_options
30
+ @opts= OptionParser.new
31
+
32
+ @opts.banner = "Usage: commander [options] ..."
33
+
34
+ @options[:verbose] = false
35
+ @opts.on( '-v', '--verbose', 'Output more information' ) do
36
+ @options[:verbose] = true
37
+ end
38
+
39
+ @options[:search] = false
40
+ @opts.on( '-s', '--search ', Array, 'Search term. For multiple words use: Term1,Term2,Term3 etc.' ) do |opt|
41
+ # works .. but sucks
42
+ @options[:search] = opt
43
+ end
44
+
45
+ @options[:max_results] = false
46
+ @opts.on( '-m', '--max_results max_results', 'Max results displayed (default is 5)' ) do |opt|
47
+ @options[:max_results] = opt
48
+ end
49
+
50
+ @options[:player] = false
51
+ @opts.on( '-p', '--player player', 'Choose media player(default is vlc)' ) do |opt|
52
+ @options[:player] = opt
53
+
54
+ end
55
+
56
+ @opts.on( '-h', '--help', 'Display this screen' ) do
57
+ puts @opts
58
+ exit
59
+ end
60
+
61
+ @opts.on( '', '--version', 'Print programm version' ) do
62
+ puts YoutubeCrawler::VERSION
63
+ exit
64
+ end
65
+ @opts.parse(@argv)
66
+ end
67
+ end
68
+ end
@@ -0,0 +1,56 @@
1
+ require 'youtube/crawler/version'
2
+ require 'youtube/cli'
3
+ require 'youtube_it'
4
+ require 'yaml'
5
+ module YoutubeCrawler
6
+
7
+ KEYS = YAML.load_file("#{File.dirname(__FILE__)}/../../config/key.yml")
8
+
9
+ class Search
10
+
11
+ attr_reader :client, :options
12
+
13
+ def initialize(opts)
14
+ @options = opts
15
+ @options[:search] = opts[:search] || 'default search'
16
+ @options[:max_results] = opts[:max_results] || 5
17
+ @options[:player] = opts[:player] || 'vlc'
18
+ end
19
+
20
+ def run
21
+ auth
22
+ query(@options[:search], @options[:max_results])
23
+ user_input
24
+ launch_player(options[:player])
25
+ end
26
+
27
+ def query(query, max_results = 5)
28
+ @number = 0
29
+ @hash = Hash.new
30
+ @result = @client.videos_by(:query => query, :max_results => max_results)
31
+ @result.videos.each do |x|
32
+ @number += 1
33
+ puts "#{@number}: #{x.title}"
34
+ @hash[@number] = x.player_url
35
+ end
36
+ end
37
+
38
+ def auth
39
+ # Change to single acc, pw prompting and save to file
40
+ @client = YouTubeIt::Client.new(
41
+ :username => KEYS['username'],
42
+ :password => KEYS['password'],
43
+ :dev_key => KEYS['key'])
44
+ end
45
+
46
+ def user_input
47
+ puts 'What video(by number)?: '
48
+ @num = $stdin.gets
49
+ end
50
+
51
+ def launch_player(player = 'vlc')
52
+ system("#{player} #{@hash[@num.to_i]}")
53
+ end
54
+
55
+ end
56
+ end
@@ -0,0 +1,3 @@
1
+ module YoutubeCrawler
2
+ VERSION = "0.0.1"
3
+ end
@@ -0,0 +1,21 @@
1
+ require 'spec_helper'
2
+
3
+ describe YoutubeCrawler::Cli do
4
+
5
+ subject { YoutubeCrawler::Cli }
6
+
7
+ describe '.new' do
8
+ it 'initializes all the stuff' do
9
+ expect(subject.new).with(@options).to_return Object
10
+
11
+ end
12
+
13
+ end
14
+ end
15
+
16
+
17
+ if this
18
+ puts 'balala'
19
+ else
20
+ puts 'this'
21
+ end
File without changes
@@ -0,0 +1,16 @@
1
+ $:.unshift(File.expand_path(File.dirname(__FILE__))) unless
2
+ $:.include?(File.dirname(__FILE__)) || $:.include?(File.expand_path(File.dirname(__FILE__)))
3
+ require 'simplecov'
4
+ SimpleCov.minimum_coverage 90
5
+ SimpleCov.formatter = SimpleCov::Formatter::HTMLFormatter
6
+ SimpleCov.start do
7
+ add_filter '/spec/'
8
+ add_filter 'vendor'
9
+ end
10
+
11
+ require 'webmock/rspec'
12
+ require 'rspec'
13
+ require 'youtube/cli'
14
+ require 'youtube/crawler'
15
+ require 'debugger'
16
+ require 'byebug'
@@ -0,0 +1,21 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'youtube/crawler/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "youtube-crawler"
8
+ spec.version = YoutubeCrawler::VERSION
9
+ spec.authors = ["jschmid1"]
10
+ spec.email = ["jschmid@suse.de"]
11
+ spec.summary = %q{Search youtube on CLI.}
12
+ spec.description = %q{plugin-container totally sucks.. }
13
+ spec.homepage = "http://rubygems.org/gems/youtube-search"
14
+ spec.license = "MIT"
15
+ spec.bindir = 'bin'
16
+ spec.files = `git ls-files -z`.split("\x0")
17
+ spec.executables = ['youtube-crawler']
18
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
+ spec.require_paths = ["lib"]
20
+
21
+ end
metadata ADDED
@@ -0,0 +1,65 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: youtube-crawler
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - jschmid1
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-08-01 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: 'plugin-container totally sucks.. '
14
+ email:
15
+ - jschmid@suse.de
16
+ executables:
17
+ - youtube-crawler
18
+ extensions: []
19
+ extra_rdoc_files: []
20
+ files:
21
+ - ".gitignore"
22
+ - ".idea/scopes/scope_settings.xml"
23
+ - ".idea/workspace.xml"
24
+ - Gemfile
25
+ - LICENSE.txt
26
+ - README.md
27
+ - Rakefile
28
+ - bin/youtube-crawler
29
+ - config/key.yml
30
+ - lib/youtube/cli.rb
31
+ - lib/youtube/crawler.rb
32
+ - lib/youtube/crawler/version.rb
33
+ - spec/cli_spec.rb
34
+ - spec/crawler_spec.rb
35
+ - spec/spec_helper.rb
36
+ - youtube-crawler.gemspec
37
+ homepage: http://rubygems.org/gems/youtube-search
38
+ licenses:
39
+ - MIT
40
+ metadata: {}
41
+ post_install_message:
42
+ rdoc_options: []
43
+ require_paths:
44
+ - lib
45
+ required_ruby_version: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: '0'
50
+ required_rubygems_version: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ requirements: []
56
+ rubyforge_project:
57
+ rubygems_version: 2.2.2
58
+ signing_key:
59
+ specification_version: 4
60
+ summary: Search youtube on CLI.
61
+ test_files:
62
+ - spec/cli_spec.rb
63
+ - spec/crawler_spec.rb
64
+ - spec/spec_helper.rb
65
+ has_rdoc: