943,724 Members | Top Members by Rank

Ad:
  • Python Discussion Thread
  • Unsolved
  • Views: 7743
  • Python RSS
You are currently viewing page 1 of this multi-page discussion thread
Nov 5th, 2005
0

IP adresses

Expand Post »
Ok, Im still really shaky w/useing python with other programs. So here is my question, is it possible to create just a very small program that grabs my IP adress, copys it, and then sends it to certain IM buddys? The reason I am asking this is beacause my friends and I play a multiplayer game but, the game requires me to give out my IP to every singe person who wants to play, not to mention I also use a program called teamspeak that requires them to type my ip. If it can't send it to im buddys is it possible to just have it copy it to the clipboard?

Help apprecaited. :cheesy:
Similar Threads
Reputation Points: 16
Solved Threads: 1
Junior Poster in Training
danizzil14 is offline Offline
68 posts
since Jul 2005
Nov 6th, 2005
0

Re: IP adresses

It might depend on what OS you are using, but here is one way ...
[php]# socket.getaddrinfo returns a list of tuples
# tuple[4][0] of each list element is the IP address

import socket

addrs = socket.getaddrinfo(socket.gethostname(), None)
for addr in addrs:
print addr[4][0]
[/php]
Moderator
Reputation Points: 1333
Solved Threads: 1403
DaniWeb's Hypocrite
vegaseat is offline Offline
5,792 posts
since Oct 2004
Nov 6th, 2005
0

Re: IP adresses

Wait so all i need to do is use that code and it will copy it to my clip board? Or will it just print it in the DOS box? Oh and I am using XP for Windows. And what is a tuples?
Reputation Points: 16
Solved Threads: 1
Junior Poster in Training
danizzil14 is offline Offline
68 posts
since Jul 2005
Nov 7th, 2005
0

Re: IP adresses

This is not very efficient, but you could get your ip using a webbased service
Python Syntax (Toggle Plain Text)
  1. import urllib2
  2. def getip():
  3. webaddress = "http://www.getip.com"
  4. page = urllib2.urlopen(webaddress)
  5. pagetolines = page.readlines()
  6. for i in pagetolines:
  7. if i.find('<title>GetIP') != -1:
  8. ipline = i
  9. break
  10. ip = ipline.split()[-1].replace("</title>","")
  11. return ip
  12. print getip()

I am not sure how to get that on you clipboard.
Reputation Points: 10
Solved Threads: 17
Posting Whiz in Training
shanenin is offline Offline
217 posts
since May 2005
Nov 7th, 2005
0

Re: IP adresses

Quote originally posted by vegaseat ...
It might depend on what OS you are using, but here is one way ...
[php]# socket.getaddrinfo returns a list of tuples
# tuple[4][0] of each list element is the IP address

import socket

addrs = socket.getaddrinfo(socket.gethostname(), None)
for addr in addrs:
print addr[4][0]
[/php]
I just tested your code, that just gets the internal ip, would he need his external IP?
Reputation Points: 10
Solved Threads: 17
Posting Whiz in Training
shanenin is offline Offline
217 posts
since May 2005
Nov 7th, 2005
0

Re: IP adresses

Good question, I am not familiar with the program called teamspeak.

The socket module brings up both IPs on Windows as long as you are connected, otherwise only the internal IP.

You might have to go to wxPython to handle the ClipBoard.

A tuple is an immutable collection of objects separated by commas, usually enclosed in (). In the socket code just print addrs to see what it looks like.
Last edited by vegaseat; Nov 7th, 2005 at 3:12 pm.
Moderator
Reputation Points: 1333
Solved Threads: 1403
DaniWeb's Hypocrite
vegaseat is offline Offline
5,792 posts
since Oct 2004
Nov 7th, 2005
0

Re: IP adresses

using pywin32 adding to the clipboard is easy.

Python Syntax (Toggle Plain Text)
  1. import win32clipboard, urllib2
  2.  
  3. # this function just gets the ip from reading page source, and parisng it out
  4. def getip():
  5. webaddress = "http://www.getip.com"
  6. page = urllib2.urlopen(webaddress)
  7. pagetolines = page.readlines()
  8. for i in pagetolines:
  9. if i.find('<title>GetIP') != -1:
  10. ipline = i
  11. break
  12. ip = ipline.split()[-1].replace("</title>","")
  13. return ip
  14.  
  15. clippedtext = getip()
  16.  
  17. # this function just places the ip into the clipboard, it takes its parameter from getip
  18. def clippy(text):
  19. win32clipboard.OpenClipboard()
  20. win32clipboard.EmptyClipboard()
  21. win32clipboard.SetClipboardText(text)
  22. win32clipboard.CloseClipboard()
  23.  
  24. clippy(clippedtext)
Reputation Points: 10
Solved Threads: 17
Posting Whiz in Training
shanenin is offline Offline
217 posts
since May 2005
Nov 8th, 2005
0

Re: IP adresses

How about Tkinter I've learned basic programming in that but i dont know if i can learn wx Python or Pywin32 but if i have to then i dont mind learning that in place of Tkinter.
Reputation Points: 16
Solved Threads: 1
Junior Poster in Training
danizzil14 is offline Offline
68 posts
since Jul 2005
Nov 8th, 2005
0

Re: IP adresses

Quote originally posted by vegaseat ...
Good question, I am not familiar with the program called teamspeak.

The socket module brings up both IPs on Windows as long as you are connected, otherwise only the internal IP.

You might have to go to wxPython to handle the ClipBoard.

A tuple is an immutable collection of objects separated by commas, usually enclosed in (). In the socket code just print addrs to see what it looks like.
Oh, and if you goto goteamspeak.com then it might help you get aquainted with the program, all it is, is a live chat program that uses mics and speakers instead of cell phones (or house phones), but beacause of the way it is set up you cant just click on a link to join a server, you need the ip of the server(the computer)
Reputation Points: 16
Solved Threads: 1
Junior Poster in Training
danizzil14 is offline Offline
68 posts
since Jul 2005
Nov 8th, 2005
0

Re: IP adresses

Oh and I am reeeeeeeeeeaaaaaaaaaalllllllly shaky with using classes, that is probably the thing I am most having trouble with when it comes to Python and Tkinter.[I just can't fully grasp the consept (ie. don;t understand why self is in there that really bugs me)]
Reputation Points: 16
Solved Threads: 1
Junior Poster in Training
danizzil14 is offline Offline
68 posts
since Jul 2005

This thread is more than three months old

No one has posted to this discussion for at least three months. Please let old threads die and do not reply to them unless you feel you have something new and valuable to contribute that absolutely must be added to make the discussion complete. Otherwise, please start a new thread in this forum instead.
Message:
Previous Thread in Python Forum Timeline: GnomeDruid class
Next Thread in Python Forum Timeline: File Interactions





About Us | Contact Us | Advertise | Acceptable Use Policy
Forum Index | Build Custom RSS Feed


Follow us on Twitter


© 2011 DaniWeb® LLC