Jump to content
UBot Underground

Uploading profile pic - twitter


Recommended Posts

  • Replies 105
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

Ok Guys here is how you upload the profile pic into twitter.   EDIT: Code doesn't longer works. Updated code is on my last post   I have being using this piece of code for over 3 months and pics uploa

Ok guys here is a Video tutorial I made for this code. I hope this help you guys get this issue resolved.   http://www.youtube.com/watch?v=SATmjpuVRqU     P0s3id0n

Yeah they finally rolled out the flash uploader in full. I hate those flash uploaders as UBot just cant work with them. I wonder if the dev team will ever do something about it. Every day more sites a

Posted Images

who is lilly? why does she work with support?

 

I put in a support ticket about this. explaining everything. how we are trying to get profile pics to work.. how poisedon shared his source.. and it works for some but not everyone.. so with the same source.. how come the problems?

 

I then linked her to this thread..

 

 

her response?

 

the forum is for help within the coumminity.. please submit a ticket with the problem.

 

so im like... i just did that? but okay.. so i submit another ticket.. with the problem.. again.. linking to the forum thread for an example..

 

and she tells me the same freaking thing???

 

"Hello,

 

Again, the forum is for getting input from other UBot users.

 

If you are having an issue, present the issue in a ticket.

 

Thank you."

 

 

I assume that means she doesnt know and their is no solution? im shocked how shitty support is.

Link to post
Share on other sites

earthling- Did Lilly answer your ticket? Most of the time the support I get from her is good, but sometimes it seems like it takes way too many messages back and forth for her to understand what I'm asking. Lately it's been solid, though. (and she's seth's sister, btw, or something like that)

 

I'm having this same problem. I just get the header image and it stays on an infinate loop. I will work on it some more, but if you got an answer to your ticket that works, then it would save me (and I'm sure others) a lot of headache if you could share it with the forum.

Link to post
Share on other sites

Okay, I have just about got it. You need to change the way it looks for the element to change for the file upload. What I did is click on "Choose Photo" and then use the camera tool to select Choose existing photo. The only thing is that the popup looks different from the header one. I have attached a screenshot and the amended ubot file. I just don't know shit about javascript. Could someone who does take a look at this and post a different javascript code that will work for uploading a random file? Or is there a different way all together to do this?

 

WTF, why can't I find the button to click to upload an attachment? ugggghhhh, ok, here's the part of the code I'm referring to. I haven't uploaded an attachment since they changed the forum interface and now I can't find it to save my life...

click($element offset(<class="caret">, 1), "Left Click", "No")
wait(2)
change file field(<image="___IMAGE___2___IMAGE___">, $random list item($get files("{$special folder("My Documents")}\\Your Image Directory Here", "Yes")))
wait(2)
run javascript("document.getElementById(\"settings_save\").click();")
wait(2)

 

This also didn't require a loop. This just brings up a popup to let me select the file to upload, but I don't know what to do after that.

 

EDIT: I think the way I'm selecting the path to find the files isn't correct. I'm going to shelve this for now and come back to it (already spent wayyyy too much time trying to figure this out). I figured out how to post an attachment. Here are my ubot file and screenshot. I decided to try and pull the image a different way since my directory has about 100 images and they are all named the same format (image1.jpg, image2.jpg, etc.). When I did it this way it at least pulled the right directory, but didn't select any of the images.

pic_upload_demo.ubot

post-4710-0-65620600-1353828842_thumb.png

Link to post
Share on other sites

Guys I have being looking at this and here is the exact code that I am using. I am getting a %100 sucess rate on profile pics and they are showing just fine while sending tweets.

 

navigate("https://twitter.com/settings/profile", "Wait")
wait for element(<type="application/x-shockwave-flash">, "", "Appear")
run javascript("document.getElementsByName(\"user[location]\")[0].value =\"{$random list item(%location)}\";")
run javascript("document.getElementsByName(\"user[description]\")[0].value =\"{$spin($random list item(%Bio))}\";")
run javascript("document.getElementById(\"settings_save\").click();")
wait for element(<id="settings-alert-box">, "", "Appear")
wait for element(<type="application/x-shockwave-flash">, "", "Appear")
change file field(<type="file">, $random list item($get files("{$special folder("Application")}\\female_pic", "Yes")))
wait(2)
loop while($not($exists(<innertext="Upload a profile image
">))) {
 change file field(<type="file">, $random list item($get files("{$special folder("Application")}\\female_pic", "Yes")))
 wait(2)
}
run javascript("document.getElementById(\"settings_save\").click();")
wait(2)
wait for browser event("Everything Loaded", "")
navigate("https://twitter.com/settings/design", "Wait")
wait for element(<src="/images/themes/theme9/swatch.gif">, "", "Appear")
wait(1)
click(<src="/images/themes/theme{$rand(2, 19)}/swatch.gif">, "Left Click", "No")
wait(1)
run javascript("document.getElementById(\"settings_save\").click();")
wait(1)
}

 

 

Ok since uploading to the new version of ubot today this has progressed a bit more for me. I can get to the part where it uploads the image, but in this case the dialogue box appears looking for me to set the image rather than it doing it behind the scenes.

 

Also, it gets cauught in that loop and the only way I could end it was to run the task manager and shut ubot that way, FYI.

Link to post
Share on other sites

just get rid of the whole lop thing man.

 

No need anymore. I am getting a %100 success rate with the new updated version.

 

just do a simple change file field it will get you an offset element media. keep the offset element but change it to type=file. That should make it work

 

I am busy updating many bots here but I will fix that demo code I made and post it here later on.

 

P0s3id0n

Link to post
Share on other sites

just get rid of the whole lop thing man.

 

No need anymore. I am getting a %100 success rate with the new updated version.

 

just do a simple change file field it will get you an offset element media. keep the offset element but change it to type=file. That should make it work

 

I am busy updating many bots here but I will fix that demo code I made and post it here later on.

 

P0s3id0n

I got rid of the loop, but I'm having the same issue kev is. It's not changing the file at all. It opens the dialogue box rather than just selecting a file. I'm running windows 7, which shouldn't be a problem obviously. I'm wondering what the common denominator is between all of the guys who are experiencing this same problem.

Link to post
Share on other sites

here is how I am doing it guys.

 

navigate("https://twitter.com/settings/profile", "Wait")
wait for element(<type="application/x-shockwave-flash">, "", "Appear")
change file field($element offset(<type="file">, 0), $random list item($get files("{$special folder("Application")}\\your folder full of pics here", "Yes")))
run javascript("document.getElementById(\"settings_save\").click();")
wait(2)
wait for browser event("Everything Loaded", "")
wait for element(<id="avatar_preview">, "", "Appear")
navigate("https://twitter.com/settings/design", "Wait")
wait for element(<src="/images/themes/theme9/swatch.gif">, "", "Appear")
wait(1)
click(<src="/images/themes/theme{$rand(2, 19)}/swatch.gif">, "Left Click", "No")
wait(1)
run javascript("document.getElementById(\"settings_save\")

 

Getting a %100 success rate with that.

 

Do not forget to set the User Agent to IE 6 during the account creation.

 

P0s3id0n

  • Like 1
Link to post
Share on other sites

here is how I am doing it guys.

 

navigate("https://twitter.com/settings/profile", "Wait")
wait for element(<type="application/x-shockwave-flash">, "", "Appear")
change file field($element offset(<type="file">, 0), $random list item($get files("{$special folder("Application")}\\your folder full of pics here", "Yes")))
run javascript("document.getElementById(\"settings_save\").click();")
wait(2)
wait for browser event("Everything Loaded", "")
wait for element(<id="avatar_preview">, "", "Appear")
navigate("https://twitter.com/settings/design", "Wait")
wait for element(<src="/images/themes/theme9/swatch.gif">, "", "Appear")
wait(1)
click(<src="/images/themes/theme{$rand(2, 19)}/swatch.gif">, "Left Click", "No")
wait(1)
run javascript("document.getElementById(\"settings_save\")

 

Getting a %100 success rate with that.

 

Do not forget to set the User Agent to IE 6 during the account creation.

 

P0s3id0n

 

It works!

 

I didnt think I would ever get this going to be honest, but that code (with a small bit of editing) worked for me.

 

Here's the slightly edited version I used:

 

clear cookies
define Create account {
   reset account("Female")
   set user agent("Internet Explorer 6")
   navigate("https://mobile.twitter.com/signup", "Wait")
   type text(<full name field>, "{$account data("First Name")} {$account data("Last Name")}", "Standard")
   type text(<email field>, "{$account data("First Name")}{$account data("Zip Code")}@hotmail.com", "Standard")
   type text(<password field>, $account data("Password"), "Standard")
   type text(<name="captcha_response_field">, $solve captcha(<create account link>), "Standard")
   click(<name="commit">, "Left Click", "No")
   if($exists(<innertext="Choose a username">)) {
    then {
	    click(<name="commit">, "Left Click", "No")
	    wait for element(<innertext="Turn images off">, "", "Appear")
    }
    else {
    }
   }
}
Create account()
navigate("https://twitter.com/settings/profile", "Wait")
wait for element(<type="application/x-shockwave-flash">, "", "Appear")
click(<id="profile_image_upload">, "Left Click", "No")
wait(2)
change file field($element offset($element offset(<name="media[]">, 0), 0), $random list item($get files("C:\\Users\\Kevin\\ETC ETC", "Yes")))
run javascript("document.getElementById(\"settings_save\").click();")
wait(2)
wait for browser event("Everything Loaded", "")
wait for element(<id="avatar_preview">, "", "Appear")
navigate("https://twitter.com/settings/design", "Wait")
wait for element(<src="/images/themes/theme9/swatch.gif">, "", "Appear")
wait(1)
click(<src="/images/themes/theme{$rand(2, 19)}/swatch.gif">, "Left Click", "No")
wait(1)
run javascript("document.getElementById(\\\"settings_save\\")

  • Like 1
Link to post
Share on other sites

P0s3id0n

 

A massive thank you for all your efforts with this. I truly appreciate the time you put into this and to help us through with getting this going.

 

Let's hope earthlingl gets it going now too!

 

Respect, sir.

Link to post
Share on other sites

I see that you used

<name="media[]">

 

For me I had to use

<type="file">

So whoever come behind if one doesn't work try the other.

 

Glad that my posts were helpful.

 

P0s3id0n

Dude, props to you. I haven't tested this code yet, but if Kev (who had the same issue as me) got it working now I'm sure it will work for me. The reason he used <name="media[]"> is because the element to upload a header image is also <type="file">, so when I was using that it would bring up the upload header window when I wanted the profile image. Anywho, thanks again, man.

Link to post
Share on other sites

Dude, props to you. I haven't tested this code yet, but if Kev (who had the same issue as me) got it working now I'm sure it will work for me. The reason he used <name="media[]"> is because the element to upload a header image is also <type="file">, so when I was using that it would bring up the upload header window when I wanted the profile image. Anywho, thanks again, man.

 

Thanks.

 

Yeah know actually there are 3 type="file" on that page on is hidden that is the reason why you must use the element offset to let Ubot know exactly the one you wanna use.

Link to post
Share on other sites

did twitter just disable the image upload that was working now or is it ubot update that is stopping it any1?

 

<div class="content-inner no-stream-end">
	    <form id="profile-form" class="form-horizontal" enctype="multipart/form-data" method="POST" action="https://twitter.com/settings/profile">
		  <div id="settings-alert-box" class="alert">
		    <i id="settings-alert-close" class="close"></i>
			  <h4>Thanks, your settings have been saved.</h4>
			  <div id="settings-alert-message">
			   
			  </div>
		  </div>
		  <input type="hidden" name="authenticity_token" value="8d8ef2e28c07c7ded0044ee1924188e774fa37c9">
		  <input type="hidden" value="PUT" name="_method">
		  <fieldset id="profile-image-controls" class="control-group">
		    <label class="control-label" for="profile_image_uploaded_data">Photo</label>
		    <div class="controls">
			  <div class="uploader-avatar clearfix">
			    <img class="avatar size73" id="avatar_preview" src="https://si0.twimg.com/profile_images/2942016676/fa78c72b8bd6accb0891b4cc00e89370_bigger.jpeg">
				  <div class="uploader-tools">
					  <div id="duckface-uploader" style="">
						  <div id="choose-photo" class="dropdown">
			  <button class="btn choose-photo-button" id="profile_image_upload" type="button">
			    Change photo
			    <span class="caret"></span>
			  </button>
			  <ul class="dropdown-menu">
			    <li class="dropdown-caret">
				  <span class="caret-outer"></span>
				  <span class="caret-inner"></span>
			    </li>
			    <li id="photo-choose-existing" class="photo-choose-existing pretty-link dropdown-link">
				  Choose existing photo
				 
   <div class="photo-selector">
    <button class="btn" type="button">
	    Change photo
	  </button>
    <span class="photo-file-name">No file selected</span>
    <div class="image-selector">
	  <input type="hidden" name="media_file_name" class="file-name">
	  <input type="hidden" name="media_data[]" class="file-data">
	  <input type="file" name="media[]" class="file-input">
	  <div class="swf-container"></div>
    </div>
  </div></li>
			    <li id="photo-choose-webcam" class="pretty-link dropdown-link " style="display:none">Take photo</li>
			    <li id="photo-delete-image" class="pretty-link dropdown-link ">Remove photo</li>
			  </ul>
			  <div class="webcam-detect swf-container" style="width: 0px; height: 0px; overflow-x: hidden; overflow-y: hidden; "><object data="/flash/WebcamDetector.swf" type="application/x-shockwave-flash" id="flash_538760215" width="1" height="1"><param name="wmode" value="transparent"><param name="AllowScriptAccess" value="sameDomain"><param name="movie" value="/flash/WebcamDetector.swf"></object></div>
			  <img src="https://si0.twimg.com/a/1354824529/images/spinner_center_72.gif" class="preview-spinner" style="display: none">
		    </div>
		  <p>This photo is your identity on Twitter and appears with your Tweets.</p>
					  </div>
				    <div style="display: none;" id="legacy-uploader">
					  <div class="photo-selector">
		  <button class="btn" type="button" disabled="true">
			  Choose file
		    </button>
		  <span class="photo-file-name">No file selected</span>
		  <div class="image-selector">
		    <input type="hidden" name="media_file_name" class="file-name">
		    <input type="hidden" name="media_data_empty" class="file-data">
		    <input type="file" name="media_empty" class="file-input">
		    <div class="swf-container"></div>
		  </div>
	    </div>
	    <p>
					    Maximum size of 700k. JPG, GIF, PNG.<br>
					    Need help uploading a profile photo? <a href="https://support.twitter.com/articles/127871" target="_blank" id="profile_image_help">Learn more</a>.<br>
						  <a href="#" id="delete-image" class="delete-image btn-link">Delete this photo</a>
					  </p>
				    </div>
			    </div>
			  </div>
		    </div>
		  </fieldset>
			  <fieldset class="control-group">
			    <label class="control-label">Header</label>
			    <div class="controls header-settings">
				  <div class="uploader-image uploader-header clearfix">
				    <span id="header_image_preview" class="image-preview bg-preview" style="background-image: url(https://si0.twimg.com/a/1354824529/t1/img/grey_header_web.png)"></span>
				    <div class="uploader-tools">
						  <div id="choose-header" class="dropdown">
		    <button class="btn choose-photo-button" id="profile_header_upload" type="button" style="display: none; ">
			  Change header
			  <span class="caret"></span>
		    </button>
		    <ul class="dropdown-menu">
			  <li class="dropdown-caret">
			    <span class="caret-outer"></span>
			    <span class="caret-inner"></span>
			  </li>
			  <li id="header-choose-existing" class="header-choose-existing pretty-link dropdown-link">
			    Choose existing image
			   
   </li>
			  <li id="header-choose-webcam" class="pretty-link dropdown-link no-webcam hidden" style="display:none"></li>
			  <li id="header-delete-image" class="pretty-link dropdown-link hidden" style="display:none">Remove</li>
		    </ul>
		    <div class="webcam-detect swf-container" style="width: 0px; height: 0px; overflow-x: hidden; overflow-y: hidden; "><object data="/flash/WebcamDetector.swf" type="application/x-shockwave-flash" id="flash_914572101" width="1" height="1"><param name="wmode" value="transparent"><param name="AllowScriptAccess" value="sameDomain"><param name="movie" value="/flash/WebcamDetector.swf"></object></div>
		    <img src="https://si0.twimg.com/a/1354824529/images/spinner_center_72.gif" class="preview-spinner" style="display: none">
		  <div class="photo-selector">
    <button class="btn" type="button">
	    Change header
	  </button>
    <span class="photo-file-name">No file selected</span>
    <div class="image-selector">
	  <input type="hidden" name="user[profile_header_image_name]" class="file-name">
	  <input type="hidden" name="user[profile_header_image]" class="file-data">
	  <input type="file" name="user[profile_header_image]" class="file-input">
	  <div class="swf-container"></div>
    </div>
  </div></div>
	    <p>
						  Recommended dimensions of 1252×626<br>
						  Maximum file size of 5MB
					    </p>
						  <p class="profile-settings-help">Need help? <a href="https://support.twitter.com/articles/127871" target="_blank" id="profile_image_help">Learn more</a>.</p>
				    </div>
				  </div>
			    </div>

Link to post
Share on other sites

ya i thought it was ubot i was talking with Eddie and he wasn't aware of it we need to get him to sort that asap

 

thanks

Looks like this has been fixed. No wonder my pictures weren't uploading.

Link to post
Share on other sites
  • 1 month later...

Hey guyz .. here is an quick way to upload an image to profile banner .

 

set user agent("Internet Explorer 6")
set(#path, "yourimagepath", "Global")
navigate("https://mobile.twitter.com/settings/profile", "Don\'t Wait")
wait for browser event("Page Loaded", 30)
click(<href="https://mobile.twitter.com/settings/profile_banner">, "Left Click", "No")
wait for browser event("Page Loaded", 30)
change file field(<name="banner">, #path)
wait(1)
click(<name="commit">, "Left Click", "No")
wait for browser event("Page Loaded", 30)

hope it helps

  • Like 1
Link to post
Share on other sites

Hi Kazzo,

 

Im trying out your code now and for some reason I can't get the image to save... I can choose one no problem, press save no problem, but it doesnt progress from there. When I press Save it greys out, too.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...