Скачать отчеты из Bugzilla

705
Matteo

У нас есть экземпляр Bugzilla, защищенный паролем, и я хотел бы загрузить отчет в формате CSV.

С помощью

wget $URL 

или же

curl $URL 

Я не получаю ни ошибки, ни запроса на аутентификацию. Bugzilla просто поставляет файл 0 байт

То же самое происходит с браузером. Если я наберу URL, я получу пустой файл. Если я войду на какую-либо страницу Bugzilla раньше, Bugilla доставит файл.

Есть ли способ проверки подлинности из командной строки, сохранения файла cookie и последующего извлечения отчета с использованием тех же файлов cookie?

-1
Просто используйте для этого встроенные табличные отчеты. Этот вопрос лучше всего адресовать сообществу Bugzilla, так как для него может потребоваться изменение самого Bugzilla. Так как Bugzilla - серверное программное обеспечение, я сомневаюсь, что это на самом деле тематический вопрос. Ramhound 10 лет назад 0
Я использую табличные отчеты. Но я получаю доступ к URL, но не могу войти в систему. Bugzilla запрашивает аутентификацию только для HTML-страниц, но не для загрузок. Это просто дает вам пустой файл. Я хотел знать, что есть способ получить их от пользователя. У меня нет средств что-либо изменить на сервере. Matteo 10 лет назад 0
Если у вас нет возможности изменить сервер для решения проблемы, то вам не повезло. Ramhound 10 лет назад 0
Зачем? Сейчас я пишу небольшой скрипт на Perl и Mechanize: извлекаю страницу, отправляю учетные данные, сохраняю cookie, получаю доступ к таблице. Я спросил, так как то, что я делаю, кажется излишним, и, возможно, я что-то упустил (это не требует сценариев). Я до сих пор не получил отрицательный голос, но что-то не большая проблема Matteo 10 лет назад 0

1 ответ на вопрос

0
Matteo

Ok maybe there are better solutions but it can be done with a little Perl script

#!/usr/bin/perl use strict; use warnings; use WWW::Mechanize; use Readonly; Readonly::Scalar my $base_url => 'https://example.org'; Readonly::Scalar my $url => "$base_url/bugzilla/report.cgi?...&ctype=csv&format=table"; # just as an example: put them in a property file Readonly::Scalar my $username => 'USERNAME'; Readonly::Scalar my $password => 'PASSWORD'; my $mech = WWW::Mechanize->new(); $mech->get("$url&GoAheadAndLogIn=1"); my %login = ( "Bugzilla_login"=> $username, "Bugzilla_password"=> $password ); $mech->set_fields(%login); $mech->submit( 'GoAheadAndLogIn' ); $mech->get( $url ); $mech->save_content( 'name.csv' ); 1; 

Похожие вопросы