Regular Expressions: pull the data between "FOO" and "BAR" - python

I have this string right here:
*TACK F\u00d6R DIN BOKNING MED RYANAIR*****\r\n------------------------------\r\n\r\nV\u00e4nligen svara inte p\u00e5 detta e-postmeddelande.****\r\n------------------------------\r\n\r\nDITT BOKNINGSNUMMER \u00c4R:* A1A1A1*****\r\n\r\nF\u00d6R ATT F\u00c5 RESA M\u00c5STE DU CHECKA IN VIA INTERNET OCH P\u00c5 FLYGPLATSEN VISA UPP\r\nDITT INTERNETBOARDINGKORT OCH GILTIG ACCEPTERAD RESEHANDLING. PASSAGERARE\r\nSOM INTE VISAR UPP ETT BOARDINGKORT P\u00c5 FLYGPLATSEN KOMMER ATT BLI\r\nDEBITERADE EN STRAFFAVGIFT F\u00d6R NY-UTSKRIFT P\u00c5 EURO40/GBP40.(varje\r\nboardingkort m\u00e5ste vara utskrivet och presenteras p\u00e5 individuella A4-ark).**\r\n**\r\n\r\nDu kan checka in via Internet fr\u00e5n 15 dagar fram till 4 timmar innan\r\nflygets schemalagda avg\u00e5ng.****\r\n\r\nRESEPLAN/KVITTO \u2013 alla tider \u00e4r lokala.****\r\n\r\nUTRESA****\r\n\r\nFr\u00e5n Milano (Bergamo) (BGY) till Stockholm Skavsta (NYO)\r\nSat, 14Aug10 Flyg FR1944 Avg\u00e5ng BGY kl 21:00 och ankomst NYO kl 23:30****\r\n\r\nPASSAGERARE****\r\n\r\n
And, I need to pull the data between "UTRESA" and "PASSAGERARE". So I tried this:
re.search(r'UTRESA (.+)PASSAGERARE',x)
And for some reason its not pulling the data! Could you guys explain to my why I'm not pulling the data, and a solution for it?

You need to use the DOTALL flag when matching newlines:
re.search(r'UTRESA(.+)PASSAGERARE', x, re.DOTALL)
and there's no space after UTRESA.
Demo:
>>> re.search(r'UTRESA(.+)PASSAGERARE', x, re.DOTALL).groups()
('****\r\n\r\nFr\\u00e5n Milano (Bergamo) (BGY) till Stockholm Skavsta (NYO)\r\nSat, 14Aug10 Flyg FR1944 Avg\\u00e5ng BGY kl 21:00 och ankomst NYO kl 23:30****\r\n\r\n',)

Related

Python Regex to Find Special Characters and characters in between

I have a csv file that looks like the following
Porta-a-Porta-d87134d1-e2bd-426b-b1f6-90d8dca68855;2842.020;2843.270;Unknown;; tecnici delle societ…
Porta-a-Porta-d87134d1-e2bd-426b-b1f6-90d8dca68855;2903.310;2906.360;Unknown;; pu• avere un profilo specifico
Porta-a-Porta-d87134d1-e2bd-426b-b1f6-90d8dca68855;2745.860;2749.060;Unknown;; Š quadruplicato rispetto al 1967.
Porta-a-Porta-d87134d1-e2bd-426b-b1f6-90d8dca68855;1023.580;1026.250;Unknown;; monitoraggio fosse completo e cosŤ via.
Porta-a-Porta-d87134d1-e2bd-426b-b1f6-90d8dca68855;708.870;711.290;Unknown;; Non solo un ponte, ma qualcosa di pi—.
Porta-a-Porta-d605218c-b8c5-4b3b-9086-b83e4c958bf5;4199.210;4200.540;Unknown;; piů straziante.
Porta-a-Porta-c28a23f4-d7b0-4624-8b49-72ba25be653e;4702.720;4703.900;Unknown;; tant'č che questo ragazzo
Presa-Diretta-Burocrazia-al-potere-ce58265f-da04-4b19-a1ad-2746830cac0a;4229.110;4232.130;Unknown;; a un testo di 13 pagine con 7/8.000 parole.<
Presa-Diretta-Burocrazia-al-potere-ce58265f-da04-4b19-a1ad-2746830cac0a;4541.560;4543.100;Unknown;; sei/otto ore al giorno.<
PresaDiretta-Il-capitale-naturale-8f39ea4f-a5fb-4c93-a504-a04d6482c086;1938.730;1941.830;Unknown;; abbattere i cervi.> Senza di loro, questa terra sarebbe
Quante-storie-15aef095-7ba8-4237-af6e-aded20d1d40a;19.920;22.630;Unknown;; questa puntata {an2}che ha come ospite una
Quante-storie-15aef095-7ba8-4237-af6e-aded20d1d40a;64.080;68.090;Unknown;; {an2}Sì, perché c'è come un ritegno a venire in una
Quante-storie-200b0694-7d54-4b5c-af5a-b54cae157ffd;446.730;447.790;Unknown;; della nostra Patria. {an2}[LA
Quante-storie-2583a3a2-2e8c-4589-bede-933736b65043;1781.910;1783.030;Unknown;; UDIBILI]
Porta-a-Porta-3b4b81d5-2f0f-4e51-9c29-00f9a2aa4444;4159.470;4160.890;Unknown;; bianca torneremo.#
Porta-a-Porta-3b4b81d5-2f0f-4e51-9c29-00f9a2aa4444;4196.930;4198.230;Unknown;; del sole#
and I am trying to spot unnecessary characters that should not belong in this file such as < or { or {an2} or [ and so on.
This is the regex I have right now and does the job well except it does not catch some cases like {an2} or # as described above. I would like to find everything including an2 and leave every Italian characters as is.
[^a-zA-Z0-9;'"\.\- ,\?:£\]\[\/()%!èàéùòìíŕěúůňčÂŤŠÈÉôü&+<>##$%^…—‚–]
Let me know if there is any easier way to solve this problem.
My guess is that, maybe we would find those undesired parts, then replace with an empty string, with some expressions similar to:
{.+?}|[\[\]<>]
Test
import re
regex = r"{.+?}|[\[\]<>]"
test_str = ("Porta-a-Porta-d87134d1-e2bd-426b-b1f6-90d8dca68855;2842.020;2843.270;Unknown;; tecnici delle societ…\n"
"Porta-a-Porta-d87134d1-e2bd-426b-b1f6-90d8dca68855;2903.310;2906.360;Unknown;; pu• avere un profilo specifico\n"
"Porta-a-Porta-d87134d1-e2bd-426b-b1f6-90d8dca68855;2745.860;2749.060;Unknown;; Š quadruplicato rispetto al 1967.\n"
"Porta-a-Porta-d87134d1-e2bd-426b-b1f6-90d8dca68855;1023.580;1026.250;Unknown;; monitoraggio fosse completo e cosŤ via.\n"
"Porta-a-Porta-d87134d1-e2bd-426b-b1f6-90d8dca68855;708.870;711.290;Unknown;; Non solo un ponte, ma qualcosa di pi—.\n"
"Porta-a-Porta-d605218c-b8c5-4b3b-9086-b83e4c958bf5;4199.210;4200.540;Unknown;; piů straziante.\n"
"Porta-a-Porta-c28a23f4-d7b0-4624-8b49-72ba25be653e;4702.720;4703.900;Unknown;; tant'č che questo ragazzo\n"
"Presa-Diretta-Burocrazia-al-potere-ce58265f-da04-4b19-a1ad-2746830cac0a;4229.110;4232.130;Unknown;; a un testo di 13 pagine con 7/8.000 parole.<\n"
"Presa-Diretta-Burocrazia-al-potere-ce58265f-da04-4b19-a1ad-2746830cac0a;4541.560;4543.100;Unknown;; sei/otto ore al giorno.<\n"
"PresaDiretta-Il-capitale-naturale-8f39ea4f-a5fb-4c93-a504-a04d6482c086;1938.730;1941.830;Unknown;; abbattere i cervi.> Senza di loro, questa terra sarebbe\n"
"Quante-storie-15aef095-7ba8-4237-af6e-aded20d1d40a;19.920;22.630;Unknown;; questa puntata {an2}che ha come ospite una\n"
"Quante-storie-15aef095-7ba8-4237-af6e-aded20d1d40a;64.080;68.090;Unknown;; {an2}Sì, perché c'è come un ritegno a venire in una\n"
"Quante-storie-200b0694-7d54-4b5c-af5a-b54cae157ffd;446.730;447.790;Unknown;; della nostra Patria. {an2}[LA\n"
"Quante-storie-2583a3a2-2e8c-4589-bede-933736b65043;1781.910;1783.030;Unknown;; UDIBILI]\n"
"Porta-a-Porta-3b4b81d5-2f0f-4e51-9c29-00f9a2aa4444;4159.470;4160.890;Unknown;; bianca torneremo.#\n"
"Porta-a-Porta-3b4b81d5-2f0f-4e51-9c29-00f9a2aa4444;4196.930;4198.230;Unknown;; del sole#")
subst = ""
result = re.sub(regex, subst, test_str, 0, re.MULTILINE)
if result:
print (result)
Demo

Two list with string. Pick random from each list and fuse them together with %s in Python

I have 2 list defined:
lunchQuote=['ska vi ta %s?','ska vi dra ned till %s?','jag tänkte käka på %s, ska du med?','På %s är det mysigt, ska vi ta där?']
lunchBTH=['thairestaurangen vid korsningen','det är lite mysigt i fiket jämte demolabbet','Indiska','Pappa curry','boden uppe på parkeringen'
,'Bergåsa kebab','Pasterian','Villa Oscar','Eat here','Bistro J']
And as you can see in the first list I wanna use the %s to bind to of the strings of each list together to a new string that I can send back to the program.
One example of a successful new string could be:
ska vi ta thairestaurangen vid korsningen?
The problem is I don't really understand how it works with %s and what I have to do before I can use it. I worked with .format before but then just on a regular string, not strings from two different lists.
I have started with saving the randomly selected choices and save them in a variable:
lunchQuote = random.choice(lunchQuote)
BTH = random.choice(lunchBTH)
What should I do next?
The best way is using format method, defining lunchQuote as follow
import random
lunchQuote=['ska vi ta {}?', 'ska vi dra ned till {}?', 'jag tänkte käka på {}, ska du med?', 'På {} är det mysigt, ska vi ta där?']
lunchBTH=['thairestaurangen vid korsningen', 'det är lite mysigt i fiket jämte demolabbet', 'Indiska', 'Pappa curry', 'boden uppe på parkeringen', 'Bergåsa kebab', 'Pasterian','Villa Oscar', 'Eat here', 'Bistro J']
lunchQuote = random.choice(lunchQuote)
BTH = random.choice(lunchBTH)
print(lunchQuote.format(BTH))
You can use also %s as follow:
import random
lunchQuote=['ska vi ta %s?', 'ska vi dra ned till %s?', 'jag tänkte käka på %s, ska du med?', 'På %s är det mysigt, ska vi ta där?']
lunchBTH=['thairestaurangen vid korsningen', 'det är lite mysigt i fiket jämte demolabbet', 'Indiska', 'Pappa curry', 'boden uppe på parkeringen', 'Bergåsa kebab', 'Pasterian','Villa Oscar', 'Eat here', 'Bistro J']
lunchQuote = random.choice(lunchQuote)
BTH = random.choice(lunchBTH)
print(lunchQuote % BTH)

Match everything until certain pattern [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
So I have this piece of text..
200 g torskefilet
havsalt og friskkværnet peber
8 tynde skiver røget spæk
150 g rødbede (ca. 2 stk.)
½ dl blommeeddike
1 spsk. olivenolie
1 spsk. rørsukker
lidt rødbedeblade eller anden bitter salat
Vask rødbederne, kom dem i en gryde med vand, og bring dem i kog. Kog rødbederne i ca. 30 min., til de er møre, men stadig har lidt bid.
Kom koldt vand på rødbederne, så de køler lidt af, og ”gnid” skindet af efterfølgende, så du kommer ind til rødbedens silkebløde indre.
Skær rødbeder ud i grove tern, og kom dem i en gryde med eddike, sukker og olivenolie.
Lad eddiken koge ind i rødbederne, så de bliver glaserede, og lagen får konsistens som sirup.
Tjek torskefileterne for evt. vildfarne ben og for friskhed (de skal dufte af hav – ikke af havn!).
Skær torsken ud i helt små tern. Brug en skarp kniv, så kødet bliver skåret – ikke moset.
Kom torsketataren i en skål, krydr med salt og peber, og rør rundt.
Form tataren til 4 små bøffer, og sæt dem i køleskabet i 10 min., så tataren lige sætter sig inden den steges.
Varm en pande op, og steg de tynde skiver spæk, så de bliver sprøde og krøller lidt sammen. Tag spækket af panden, og læg det på et stykke køkkenrulle.
Hæld overskydende fedt af panden, og steg så tatarbøfferne i 30 sek. – bare på den ene side. På den måde får de en flot steges korpe, samtidig med at de stadig er rå.
Server bøfferne med de lune, glaserede rødbeder, det sprøde spæk, lidt salat og friskskrabet peberrods-sne (se næste opskrift).
Jeg elsker klassisk kogetorsk med hele svineriet: syltede rødbeder, spæk, høvlet peberrod, fiskesennep og smørsovs – og denne forret er min moderne variant af den evigtgode kombination.
Its a recipe text, the first half is the ingredients with their quantities and the second half is the steps. I'm trying to match using Regex the ingredients and the steps separately.
For ingredients I came up with this Regex string ^(\d|[a-z]).*(?=[A-Z].*)?$ and the for the steps I did this ^[A-Z].*.
However the piece of text is part of a document with recipes each with their own ingredients and steps, so I want to identify each recipe separately. To do that I want to match the ingredients up until the first occurence of the steps pattern and the steps until the first occurence of the ingredients pattern.
How do I do that?
You don't need a regex:
from itertools import imap
from itertools import takewhile, groupby
with open("recipes.txt") as f:
grps = groupby(imap(str.rstrip, f), key=str.islower )
for k, v in grps:
if k:
ing, steps = list(v), list(next(grps, ("", ""))[1])
print(ing)
print(steps)
print("\n\n")
That will work regardless of spacing once the ingredients are always lowercase.
Input:
200 g torskefilet
havsalt og friskkværnet peber
8 tynde skiver røget spæk
150 g rødbede (ca. 2 stk.)
½ dl blommeeddike
1 spsk. olivenolie
1 spsk. rørsukker
lidt rødbedeblade eller anden bitter salat
Vask rødbederne, kom dem i en gryde med vand, og bring dem i kog. Kog rødbederne i ca. 30 min., til de er møre, men stadig har lidt bid.
Kom koldt vand på rødbederne, så de køler lidt af, og ”gnid” skindet af efterfølgende, så du kommer ind til rødbedens silkebløde indre.
Skær rødbeder ud i grove tern, og kom dem i en gryde med eddike, sukker og olivenolie.
Lad eddiken koge ind i rødbederne, så de bliver glaserede, og lagen får konsistens som sirup.
Tjek torskefileterne for evt. vildfarne ben og for friskhed (de skal dufte af hav – ikke af havn!).
Skær torsken ud i helt små tern. Brug en skarp kniv, så kødet bliver skåret – ikke moset.
Kom torsketataren i en skål, krydr med salt og peber, og rør rundt.
Form tataren til 4 små bøffer, og sæt dem i køleskabet i 10 min., så tataren lige sætter sig inden den steges.
Varm en pande op, og steg de tynde skiver spæk, så de bliver sprøde og krøller lidt sammen. Tag spækket af panden, og læg det på et stykke køkkenrulle.
Hæld overskydende fedt af panden, og steg så tatarbøfferne i 30 sek. – bare på den ene side. På den måde får de en flot steges korpe, samtidig med at de stadig er rå.
Server bøfferne med de lune, glaserede rødbeder, det sprøde spæk, lidt salat og friskskrabet peberrods-sne (se næste opskrift).
Jeg elsker klassisk kogetorsk med hele svineriet: syltede rødbeder, spæk, høvlet peberrod, fiskesennep og smørsovs – og denne forret er min moderne variant af den evigtgode kombination.
200 blah
400 bar
foobar bar
Foobar
Bar
Output:
['200 g torskefilet', 'havsalt og friskkv\xc3\xa6rnet peber', '8 tynde skiver r\xc3\xb8get sp\xc3\xa6k', '150 g r\xc3\xb8dbede (ca. 2 stk.)', '\xc2\xbd dl blommeeddike', '1 spsk. olivenolie', '1 spsk. r\xc3\xb8rsukker', 'lidt r\xc3\xb8dbedeblade eller anden bitter salat']
['', 'Vask r\xc3\xb8dbederne, kom dem i en gryde med vand, og bring dem i kog. Kog r\xc3\xb8dbederne i ca. 30 min., til de er m\xc3\xb8re, men stadig har lidt bid.', '', 'Kom koldt vand p\xc3\xa5 r\xc3\xb8dbederne, s\xc3\xa5 de k\xc3\xb8ler lidt af, og \xe2\x80\x9dgnid\xe2\x80\x9d skindet af efterf\xc3\xb8lgende, s\xc3\xa5 du kommer ind til r\xc3\xb8dbedens silkebl\xc3\xb8de indre.', '', 'Sk\xc3\xa6r r\xc3\xb8dbeder ud i grove tern, og kom dem i en gryde med eddike, sukker og olivenolie.', '', 'Lad eddiken koge ind i r\xc3\xb8dbederne, s\xc3\xa5 de bliver glaserede, og lagen f\xc3\xa5r konsistens som sirup.', '', 'Tjek torskefileterne for evt. vildfarne ben og for friskhed (de skal dufte af hav \xe2\x80\x93 ikke af havn!).', '', 'Sk\xc3\xa6r torsken ud i helt sm\xc3\xa5 tern. Brug en skarp kniv, s\xc3\xa5 k\xc3\xb8det bliver sk\xc3\xa5ret \xe2\x80\x93 ikke moset.', '', 'Kom torsketataren i en sk\xc3\xa5l, krydr med salt og peber, og r\xc3\xb8r rundt.', 'Form tataren til 4 sm\xc3\xa5 b\xc3\xb8ffer, og s\xc3\xa6t dem i k\xc3\xb8leskabet i 10 min., s\xc3\xa5 tataren lige s\xc3\xa6tter sig inden den steges.', '', 'Varm en pande op, og steg de tynde skiver sp\xc3\xa6k, s\xc3\xa5 de bliver spr\xc3\xb8de og kr\xc3\xb8ller lidt sammen. Tag sp\xc3\xa6kket af panden, og l\xc3\xa6g det p\xc3\xa5 et stykke k\xc3\xb8kkenrulle.', 'H\xc3\xa6ld overskydende fedt af panden, og steg s\xc3\xa5 tatarb\xc3\xb8fferne i 30 sek. \xe2\x80\x93 bare p\xc3\xa5 den ene side. P\xc3\xa5 den m\xc3\xa5de f\xc3\xa5r de en flot steges korpe, samtidig med at de stadig er r\xc3\xa5.', '', 'Server b\xc3\xb8fferne med de lune, glaserede r\xc3\xb8dbeder, det spr\xc3\xb8de sp\xc3\xa6k, lidt salat og friskskrabet peberrods-sne (se n\xc3\xa6ste opskrift).', '', 'Jeg elsker klassisk kogetorsk med hele svineriet: syltede r\xc3\xb8dbeder, sp\xc3\xa6k, h\xc3\xb8vlet peberrod, fiskesennep og sm\xc3\xb8rsovs \xe2\x80\x93 og denne forret er min moderne variant af den evigtgode kombination.']
['200 blah', '400 bar', 'foobar bar']
['', 'Foobar', 'Bar']
If you want to remove the empty lines:
grps = groupby((line for line in imap(str.rstrip, f) if line), key=str.islower )
Which will remove any empty lines i.e:
['200 blah', '400 bar', 'foobar bar']
['Foobar', 'Bar']
It seems like the first empty line is between the ingredients and the steps, so you might not even need regex:
ingredients, steps = recipe_string.split("\n\n", 1)
This will split the string at the first instance of 2 consecutive newlines.

XPath with Scrapy node begins with \n

I'm using scrapy on html like:
<td nowrap="" valign="top" align="right">
<br>
Text is here.
<br>
Other text is here
<br>
</td>
td[1]/text()[1] gives me:
(empty line)
Text is here.
I've tried normalize-space, i.e. normalize-space(td[1]/text()[1]), which works when I test in my firefox extension, but not in scrapy. I think scrapy is getting tripped up by the \n and it skips over (or only takes first line of node, which is nothing). I've also tried some "preceding" and "following" code, but I think it might be considered one element, my DOM says the nodeValue = "\nText is here" Any thoughts?,
Extract every text, get the desired one by index. For instance:
response.xpath("//table[#id='myid']/tr[1]/td[1]//text()")[1]
Demo from the Scrapy Shell:
$ scrapy shell http://www.trobar.org/troubadours/coms_de_peiteu/guilhen_de_peiteu_01.php
In [1]: table = response.xpath("//table")[2]
In [2]: td = "".join(table.xpath(".//td[1]//text()").extract())
In [3]: print(td)
Companho, farai un vers qu'er covinen,
Et aura-i mais de foudatz no-y a de sen,
Et er totz mesclatz d'amor e de joy e de joven.
E tenguatz lo per vilan qui no-l enten,
O dins son cor voluntiers non l'apren:
Greu partir si fai d'amor qui la troba a talen.
Dos cavalhs ai a ma sselha, ben e gen,
Bon son et adreg per armas e valen,
E no-ls puesc amdos tener, que l'us l'autre non cossen.
Si-ls pogues adomesjar a mon talen,
Ja no volgr'alhors mudar mon garnimen,
Que meils for'encavalguatz de nuill ome viven.
Launs fon dels montaniers lo plus corren,
Mas aitan fer' estranhez'a longuamen
Et es tan fers e salvatges, que del bailar si defen.
L'autre fon noyritz sa jus part Cofolen
Ez anc no-n vis bellazor, mon escien:
Aquest non er ja camjatz ni per aur ni per argen.
Qu'ie-l donei a son senhor polin payssen,
Pero si-m retinc ieu tan de covenen
Que, s'ilh lo tenia un an, qu'ieu lo tengues mais de cen.
Cavalier, datz mi cosselh d'un pessamen:
-Anc mays no fuy issaratz de cauzimen- :
Res non sai ab qual me tengua, de n'Agnes o de n'Arsen.
De Gimel ai lo castel e-l mandamen,
E per Niol fauc ergueill a tota gen:
C'ambedui me son jurat e plevit per sagramen.

Trimming white spaces in python bs4

I am trying to remove whitespaces in the scraped data. I referred all the solutions that are available, but nothing seems to work.
Here is my code
from bs4 import BeautifulSoup
import urllib2
url="http://www.sfap.org/klsfaprep_search?page=38&type=1&strname=&loc=&op=Lancer%20la%20recherche&form_build_id=form-72a297de309517ed5a2c28af7ed15208&form_id=klsfaprep_search_form"
page=urllib2.urlopen(url)
soup = BeautifulSoup(page.read())
universities=soup.findAll('div',{'class':'field-item odd'})
for eachuniversity in universities:
#print eachuniversity['href']+","+eachuniversity.string.encode('utf-8').strip()
print eachuniversity.string if eachuniversity else ''
The output I am getting is
EMSP
None
None
BP J5
98880
NOUMEA
Nouvelle-Calédonie
Intra établissement
Dr Chantal Barbe
c.barbe#cht.nc
00 687 25 66 66 (standard)
emasp#cht.nc
1078 (poste Dr Barbe)
Accueil stagiaire
None
Régional
None
But I want it to be
EMSP,None,None, BP J5,98880,NOUMEA,Nouvelle-Calédonie,Intra établissement,Dr Chantal Barbe, c.barbe#cht.nc, 00 687 25 66 66 (standard), emasp#cht.nc, 1078 (poste Dr Barbe), Accueil stagiaire, None, Régional,None
When I tried other SO answers I got Nonetype attribute error.
Update
I have improved my script as following
from bs4 import BeautifulSoup
import urllib2
url="http://www.sfap.org/klsfaprep_search?page=38&type=1&strname=&loc=&op=Lancer%20la%20recherche&form_build_id=form-72a297de309517ed5a2c28af7ed15208&form_id=klsfaprep_search_form"
page=urllib2.urlopen(url)
soup = BeautifulSoup(page.read())
for eachuniversity in soup.findAll('div',{'class':'field-item odd'}):
print ''.join(eachuniversity.findAll(text=True)).encode('utf-8').strip()
This gives me the following output
EMSP
Nom de la structure: 
EMASP
Hôpital Gaston Bourret
BP J5
98880
NOUMEA
Nouvelle-Calédonie
Intra établissement
Dr Chantal Barbe
c.barbe#cht.nc
00 687 25 66 66 (standard)
emasp#cht.nc
1078 (poste Dr Barbe)
Accueil stagiaire
7h30 17h
Régional
ouverture équipe mobile depuis le 1 aout 2011
Travail au quotidien avec le malade sur demande médecin référent
Activités de formation intra et extra hospitalières sur toute la Nouvelle Calédonie auprès de professionnels de la santé, des auxiliaires de vie, des bénévoles, des prêtres....
Information auprès du grand public
Travail de recherche : étude des problèmes ethniques; évaluation du ressenti des malades walisien et /ou kanak sur l' approche SP et propositions
But I want this to be in a single line with comma-separated.
To print on the same line, just add a , at the end of the print statement:
print ''.join(eachuniversity.findAll(text=True)).encode('utf-8').strip(),',',
You might want to remove newlines from the text.
print re.sub(r'\s+',' ',''.join(eachuniversity.findAll(text=True)).encode('utf-8')),',',
It will replace all consecutive whitespace characters including newlines with a single space.

Categories

Resources