Pythons " urllib " og " httplib " moduler forenkler processen med at etablere forbindelser til fjerntliggende servere , men ligesom ethvert værktøj , vil de kun arbejde, når du bruger dem korrekt . Hvis din Python -koden giver dig en " ikke-numerisk port fejl" så er du enten forsøger at passere nonintegers som portnumre eller bruger den forkerte metode til at passere godkendelsesdata. Server Communications
Server porte fungere som en slags omstillingsbord , der gør det muligt for operativsystemet til direkte data anmodninger til deres påtænkte program eller service. Operativsystemer forbeholde bestemte standardiserede porte til store tjenester , såsom port 80 til HTTP-protokollen anmodninger. Når programmer begynder at lytte til indkommende anmodninger på en bestemt port , operativsystemet viderestiller alle indgående forbindelser med denne særlige portnummer til dette program . Disse anmodninger overholder formatet for "host -name : port - nummer ", hvor "host -name" er IP-adressen eller domænenavnet på den server og " port - nummer" er det portnummer
.
numerisk port
Programmer kan bruge ethvert portnummer at serverens operativsystem ikke har forbeholdt andre tjenester. Men portnumre at være hele tal . Hvis du forsøger at passere tegnstrenge eller ikke-heltal værdier ind i syntaksen " domain- name: port - nummer" med en standard - stik anmodning på Python, eller ethvert andet sprog , så vil du få en " nonumeric port fejl. " standard - socket -protokoller ikke kan håndtere en anmodning portnummerintervaller data, der ikke er i heltal format.
Proxy Handling
p Du kan ikke passere autentificering data til en server bruger den samme syntaks som anmoder om data fra specifikke portnummer. Hvis du forsøger at passere brugernavne eller adgangskoder via en proxy lag på en server , skal du bruge en speciel metode i " urllib " modul kaldet " ProxyHandler . " Du kan finde oplysninger om at bruge denne metode i " Resources " sektionen.
API'er
en application programming interface er et bibliotek af metoder , der kan tage godkendelsesprocedurerne legitimationsoplysninger og producere en direkte forbindelse , hvorigennem din software kan sende data til og hente data fra en web-baseret service. Hvis den tjeneste, du forsøger at bruge tilbyder en API , bør du bruge den. Dette er både fordi det er den enkleste metode til oprettelse af forbindelse, du har brug for, og fordi tjenestens vedligeholder hensigt for andre programmører til at bruge hans produkt.