我正在努力解析一个包含一些Java的网站:使用BeautifulSoup我应该能够提取出我需要的信息,但是尽管我做了很多尝试,我还是不明白如何做。不幸的是,我不能发布链接,因为这是一个受限制的网站,但我可以发布的HTML代码和结果,我得到,希望有人能帮助我。你知道吗
以下是HTML的摘录:
<table class="customer-info-table">
<tr>
<td>
<label>Nome</label>
XXXXXX XXXX
</td>
<td>
<label>Cognome</label>
XXXXXXX
</td>
</tr>
<tr>
<td>
<label>Codice cliente</label>
N/A
</td>
<td>
<label>Indirizzo e-mail</label>
XXXXXXXXX@gmail.com
</td>
</tr>
</table>
<span class="panel-headline">Commento articolo</span>
<hr/>
<i class="rating r1"></i><br/>
BLACKLIST
<textarea name="text" id="review-text" rows="12" readonly="readonly">
Mi avete mandato e-mail Ke il prodotto era disponibile; invece è esaurito........... Mah.</textarea>
<span class="panel-headline">Commenti sulla vestibilità</span>
<hr/>
<table class="size-info-table">
<tr>
<td>
<label>Lunghezza</label>
Viel zu kurz
</td>
<td>
<label>Larghezza</label>
Viel zu eng
</td>
<td>
<label>Taglia</label>
 
</td>
<td>
<label>Varianti</label>
 
</td>
<td>
<label>Statura</label>
 
</td>
</tr>
</table>
<p>
<table class="table">
<tr>
<td>
<b>Rezensions-ID:</b>
<span id="review-id">11166707</span>
</td>
<td>
<b>Creata:</b>
<span class="utc-date">
23.03.2018 12:23:15
</span>
</td>
</tr>
<tr>
<td>
<b>Letzte Änderung</b>
<span class="utc-date">
23.03.2018 12:23:15
</span>
</td>
<td>
<b>di</b>
Kunde
</td>
</tr>
<tr>
<td>
<b>Data pubblicazione:</b>
<span class="utc-date">
</span>
</td>
</tr>
</table>
</p>
</div>
</div>
<div class="span4">
<div id="editing-functions-panel" class="label full-height">
<span class="panel-headline">Modifica</span>
<hr/>
<div>
<label>Scegli un destinatario</label>
<a id="reset-recipients-list-link" class="btn-link" href="#" onclick="reviews.resetRecipientsList(true); return false;">Cancella la lista destinatari</a>
<select name="email-recipients-select" id="email-recipients-select"><option value=""></option>
<option value="servizio@bonprix.it">XXXXXX@XXXXXXX.it</option></select>
<textarea name="email-recipients-textarea" id="email-recipients-textarea">
</textarea>
<a id="send-mail-btn" class="btn" data-confirm-translation-modified-text="Die Übersetzung wurde noch nicht gespeichert. Rezension trotzdem versenden?" href="#" onclick="reviews.sendMail(true); return false;">Invia recensione</a>
<label>Traduci</label>
<textarea name="text" id="review-uebersetzung">
</textarea>
<label>Feedback al cliente</label>
<textarea name="text" id="review-feedbackToCustomer">
</textarea>
</div>
<div>
<label>Tipo di recensione</label>
<select name="meinungstyp" id="review-meinungstyp"><option selected="selected" value="R">Recensione</option>
<option value="G">Risposte</option>
<option value="A">Archivio</option></select>
</div>
<div id="aktiv-checkboxes-container">
<div class="control-group use-bootstrap-groups">
<label class="control-label" for="review_aktiv">Pubblicata</label>
<input type="hidden" name="review_aktiv" id="review_aktiv" />
<div class="controls">
<div class="btn-group">
<a class="change-active-state btn " data-value="T" href="#">Sì</a>
<a class="change-active-state btn " data-value="F" href="#">No</a>
</div>
</div>
</div>
</div>
<div class="row-fluid form-actions possible-multi-line">
<a class="btn btn-primary" id="save-review-btn" remote="true" href="#" onclick="reviews.saveReview(true); return false;">Salva recensione</a>
<a class="btn btn-danger" id="delete-review-btn" remote="true" data-confirm-dialog-title="Cancella recensioni" href="#" onclick="reviews.deleteSelectedReview(true); return false;"><i class='icon-trash icon-white'></i> Cancella recensioni</a>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div id="search-reviews-tab"> <div class="mini-statistics">
<p>
Da controllare: 88 / Pubblicata: 301941 / Non pubblicata: 9198 / Prenotate: [0], mie: [0]
</p>
</div>
我尝试运行以下代码(变量页包含对窗体发出的post请求的结果):
page = response3.text
soup2 = BeautifulSoup(page, 'html.parser')
for table in soup2.find_all(["table", {"class": "customer-info-table"}]):
string = table.get_text().replace("\\n", "").replace("\/th", "").replace("\/span", "").replace("\/i", "").replace("\/p", "").replace("\/a", "").replace("\/tr", "").replace("\/div", "").replace("\/td", "").replace("<\/tbody", "").replace("\/table", "").replace("\/textarea", "").replace("\/b","").replace("<\/label", "").replace("ead", "").replace("<>", "")
print string
这就是我打印字符串时得到的结果:
1 Rezensionen
gefunden
5 Volevo sapere se rientrano perchè
vedo che la taglia 48/50 è terminata ...
> Informazioni articoloN.
art.>97655395Masterstyle-ID>33426811Digistyle-ID>19163347Ø Media dei
voti>4.13 Lunghezza>GiustoLarghezza>GiustoDisponibilità>Esaurito(0)
Dati cliente Nome> XXXXXX Cognome>
XXXXXX Codice cliente> N/A Indirizzo
e-mail> XXXXXXXXXXXX@gmail.com Commento articolo
BLACKLISTVolevo sapere se rientrano perchè vedo che la taglia 48/50 è
terminata ...Commenti sulla vestibilità Lunghezza> Viel
zu kurz Larghezza> Viel zu eng Taglia> Varianti> Statura>
Rezensions-ID: 9430069 Creata:
01.01.2017 12:37:16 Letzte
Änderung 05.01.2017 07:52:42 di
YYYYYYYY
Data pubblicazione:
Modifica Scegli un destinatario> Cancella la lista destinatari
<\/option>XXXXXXX@XXXXXXX.it<\/option><\/select> Invia recensione
Traduci> Feedback al cliente> Tipo di recensione>
Recensione<\/option>Risposte<\/option>Archivio<\/option><\/select>
Pubblicata> Sì No Salva
recensione Cancella recensioni
').trigger('repaint');
reviews.initEditReviewTab();
$('#reviews-tab-navigation').tabs('option', 'active', 0);
$('.search-tab-buttons').html(' Cerca Ricerca standard
Statistiche ');
$('.mini-statistics').replaceWith(' Da controllare: 90 /
Pubblicata: 301968 / Non pubblicata: 9198 / Prenotate: [0], mie: [0]
');
Nome> XXXXXXX Cognome> XXXXXXX
Codice cliente> N/A Indirizzo e-mail>
XXXXXXXXX@gmail.com Commento articolo BLACKLISTVolevo sapere
se rientrano perchè vedo che la taglia 48/50 è terminata ...Commenti
sulla vestibilità Lunghezza> Viel zu kurz
Larghezza> Viel zu eng Taglia>
Varianti> Statura>
Rezensions-ID: 9430069 Creata:
01.01.2017 12:37:16 Letzte Änderung
05.01.2017 07:52:42 di YYYYYYY
Data pubblicazione:
Modifica Scegli un destinatario> Cancella la lista destinatari
<\/option>XXXXXXX@XXXXXXX.it<\/option><\/select> Invia recensione
Traduci> Feedback al cliente> Tipo di recensione>
Recensione<\/option>Risposte<\/option>Archivio<\/option><\/select>
Pubblicata> Sì No Salva
recensione Cancella recensioni
').trigger('repaint');
reviews.initEditReviewTab();
$('#reviews-tab-navigation').tabs('option', 'active', 0);
$('.search-tab-buttons').html(' Cerca Ricerca standard
Statistiche ');
$('.mini-statistics').replaceWith(' Da controllare: 90 /
Pubblicata: 301968 / Non pubblicata: 9198 / Prenotate: [0], mie: [0]
');
Lunghezza> Viel zu kurz Larghezza> Viel zu
eng Taglia> Varianti>
Statura> Rezensions-ID: 9430069
Creata: 01.01.2017 12:37:16
Letzte Änderung 05.01.2017 07:52:42
di YYYYYY Data pubblicazione:
Modifica Scegli un destinatario> Cancella la lista destinatari
<\/option>XXXXXX@XXXXXX.it<\/option><\/select> Invia recensione
Traduci> Feedback al cliente> Tipo di recensione>
Recensione<\/option>Risposte<\/option>Archivio<\/option><\/select>
Pubblicata> Sì No Salva
recensione Cancella recensioni
').trigger('repaint');
reviews.initEditReviewTab();
$('#reviews-tab-navigation').tabs('option', 'active', 0);
$('.search-tab-buttons').html(' Cerca Ricerca standard
Statistiche ');
$('.mini-statistics').replaceWith(' Da controllare: 90 /
Pubblicata: 301968 / Non pubblicata: 9198 / Prenotate: [0], mie: [0]
');
Rezensions-ID: 9430069 Creata:
01.01.2017 12:37:16 Letzte Änderung
05.01.2017 07:52:42 di YYYYYYY
Data pubblicazione:
Modifica Scegli un destinatario> Cancella la lista destinatari
<\/option>XXXXXXX@XXXXXXX.it<\/option><\/select> Invia recensione
Traduci> Feedback al cliente> Tipo di recensione>
Recensione<\/option>Risposte<\/option>Archivio<\/option><\/select>
Pubblicata> Sì No Salva
recensione Cancella recensioni
').trigger('repaint');
reviews.initEditReviewTab();
$('#reviews-tab-navigation').tabs('option', 'active', 0);
$('.search-tab-buttons').html(' Cerca Ricerca standard
Statistiche ');
$('.mini-statistics').replaceWith(' Da controllare: 90 /
Pubblicata: 301968 / Non pubblicata: 9198 / Prenotate: [0], mie: [0]
');
Cerca Ricerca standard Statistiche ');
$('.mini-statistics').replaceWith(' Da controllare: 90 /
Pubblicata: 301968 / Non pubblicata: 9198 / Prenotate: [0], mie: [0]
');
我不明白为什么它会重复几次内容:我只需要一次信息,顺便说一下,并不是所有的信息(只是第一块结果的第一部分,在评论.initEditReviewTab();"). 你知道吗
如有任何意见或建议,我们将不胜感激。你知道吗
提前谢谢!你知道吗
目前没有回答
相关问题 更多 >
编程相关推荐