Searchcode 2.0



    Недавно запущена новая версия поисковика по исходному коду Searchcode. В его индексе — проекты с Github, Bitbucket, Google Code, Codeplex, Sourceforge, Fedora Project и других. Всего в базе более 18 млрд строк кода из более чем 200 000 проектов.

    У Searchcode открыты API без лимита (пока) на количество запросов, даже ключ API не требуется.

    Особенность Searchcode — поддержка фильтров по более чем 90 языкам программирования и возможность использования специальных символов при поиске. Есть ещё фильтры по источнику и по репозиторию.

    Примеры запросов
    using System.Linq;
    i++;
    api.duckduckgo.com
    Backbone.Collection.extend
    import pandas
    mysql_query lang:PHP
    List
    re.compile lang:Python



    Кстати, если в поисковике DuckDuckGo указать !code в запросе, то он сразу перенаправит на Searchcode. Это очень удобно, если DuckDuckGo установлена как поисковая система по умолчанию в браузере.

    Разработчик Searchcode Бен Бойтер пишет, что переписал новую версию на Django, но в качестве поискового движка по-прежнему использует Sphinx. Сайт работает на двух серверах, так что не нагружайте его слишком сильно через безлимитный API.
    Support the author
    Share post
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More
    Ads

    Comments 31

      +3
      Drupal'овские .inc файлы попали в категорию pascal :)) хотя это php
        0
        А можно указать из какого именно проекта искать?
        Например я выбрал БОЛЬШОООЙ проект на Github и хочу поискать только в нём…
          +1
          Это можно сделать и из самого проекта GitHub.
          Например: github.com/MiniKeePass/MiniKeePass/search?q=Mutable
            0
            Хм… не знал, спасибо!

            Но всё же ведь это особенность самого Github, а не поисковой системы.
            Если я хочу найти не в Github, а в X?

            Или если я хочу поискать и в Github и в X?
              0
              У X скорее всего тоже будет поле для поиска :) А если и там, и там, то разве бывает так, что один проект хостит код на разных платформах?
          +2
          Интересно, как часто обновляется индекс.
          Попробовал найти один мой проектик с github, созданный 21 мая. Еще не находится.
            0
            У меня репозиторию уже 2 года с учетом битбакета и гитхаба и тоже ничего не нашло. Возможно, они индекировали избирательно. По популярности или еще как.
            +5
            Очень классная штука. Помогает смотреть то как используют другие определенный функционал. Не всегда в документации все описано понятно, а тут можно легко назодить рабочие примеры.
              0
              Эту бы новость да пару часов назад. По GTK бесполезно читать документацию, можно только искать примеры использования:)
                +1
                со временем, кстати, втягиваешься :) и уже можно читать документацию
                +10
                Пугают вот такие вещи — searchcode.com/codesearch/view/59697646/#l-19
                +3
                Не понял, что это за «Estimated Cost» у каждого файла из выдачи?
                  +1
                  Подозреваю, некая нелинейная функция от Code Lines, Comment Lines, Blank Lines (линейные коэффициенты не выводятся).
                  0
                  Там блог проекта есть (или это блог автора проекта)
                  Кажется, там описаны, техническию нюансы реализации. Хочу почитать, может и другим интересно будет.
                  Вот ссылочка www.boyter.org/
                  +3
                    +8
                    Лицензия WTFPL популярна, однако. Но есть и очаровательные употребления:

                    api_error('No API Key provided', 'Yeah open the locked door without a key. Shut your facehole, dumbass.');
                    api_error('API access restricted. Use API_open to open a new API connection with your API Key.', 'You can\'t get none of this sweet, sweet data unless I say so, bitch.');
                    api_error('An API session is already open.', 'How much fucking permission do you need? You already have it, stop asking for more.');
                    api_error('Access denied.', 'DON\'T TOUCH ME THERE!');
                    api_error('No key given.', 'Sure I\'ll store that for you. Just don\'t ask for it back.');
                    api_error('No value given.', 'Storing this in /dev/null/');
                    api_error("No post data for that ID.", "Why don't you pick a post that actually exists next time, assbag.");
                    api_error("No Post ID given.", "What the fuck do you want me to do, guess which post you want?");
                    api_error('No posts matched your query.', 'If you were looking for NOTHING, you sure as fuck found it.');
                    api_error('No howMany value.', 'So how many posts do you want? You left it up to me. So I gave you none.');
                    api_error("No tag given.", "Oh let me just look up NOTHING, that will certainly work, dickless.");
                    api_error("No data requested.", "What? You thought I was gonna give you an empty data object? HA! Cockshiner.");
                    api_error("User banned from voting.", "You can't vote because we hate you.");
                    api_error("User has already voted.", "If you try to votespam, I swear to god I will cut you.");
                    api_error("Invalid vote type.", "'" . $type . "'? Seriously? Does that look like 'vote' or 'sink' to you? Are you completely fucking illiterate?");
                    api_error('User banned from submitting.', 'You can\'t submit because we hate you.');
                    api_error("MySQL error: " . mysql_error(JACKED_DEFAULT_LINK), "What the fuck did you to to my beautiful API you bastard?");
                    api_error("No decision given.", "Yeah, skip the Decision on Poor DECISIONS. Nice work, dickface.");
                    api_error("No tags found", "I have no idea how the fuck this is even possible. I blame you though.");
                    api_error('Login failed.', 'It didn\'t work. Why? Who the fuck knows. It probably hates you.');
                    api_error('No provider given.', 'What the hell do you want to log into? Nowhere? Here.');
                    api_error('No comments matched your query.', 'That\'s not even a thing, doucheface.');
                    api_error('User banned from commenting.', 'You can\'t comment because we hate you.');
                    api_error('Could not add comment', 'I think your comment was so stupid it broke the site.');
                    api_error('Username is in use.', 'Stop trying to pretend you\'re one of us you sack of shit.');
                    api_error('No post ID given.', 'This comment will float in the tubes attached to no post whatsoever forever. Nice work, dickless.');
                    api_error('No kirby type.', 'WHAT THE FUCK KIND OF KIRBY YOU WANT YOU GOTTA TELL ME NOW GODDAMN SHIT AAAAGH');
                    api_error("No API action was requested.", "If you want something, fucking ask for it.");
                    
                      +1
                      Вот так вот и узнаешь о новых лицензиях
                      +1
                        +1
                        Вот он тут пишет www.boyter.org/2013/02/why-code-search-is-difficult/

                        Other issues to consider is that most indexers will not index special characters such as !@#$%^&*()_+[]>< These are desirable searches when looking for source code. Once you realise someone might want to search for List
                        • UFO just landed and posted this here
                            0
                            У ребят из авито, судя по DevConf есть проблема с "-", как раз в настройке sphinx. Так что видимо не все так гибко
                            • UFO just landed and posted this here
                                0
                                Если будет видео — будут подробности. Вопрос был поднят после доклада из зала, и выступающий признал, что есть такая проблема. Что-то было с фотоаппаратом, в модели которого есть "-", и собственно это объявление было невозможно найти.
                          0
                          Для такого есть symbolhound.com.
                          0
                          Хороший проект
                          Будет что почитать
                            +2
                            Никто не сравнивал с ohloh code search? Для ленивых: code.ohloh.net/

                            Only users with full accounts can post comments. Log in, please.